Как сделать так, чтобы весь интернет-трафик проходил только через VPN?
У меня есть VPN-соединение, и я хочу убедиться, что весь трафик использует это VPN-соединение. Я хоть и пользуюсь iptables. идеи кто-нибудь? десять х
3 ответа
Запустив этот скрипт при запуске, я решил проблему, описанную в вашем посте.
# Delete all existing rules
iptables -F
# Allow from local network
iptables -A OUTPUT -d 192.168.2.0/24 -j ACCEPT
iptables -A OUTPUT -s 192.168.2.0/24 -j ACCEPT
# Allow OpenVPN
iptables -A OUTPUT -p udp --dport 1194 -j ACCEPT
# Deny eth0
iptables -A OUTPUT -o eth0 -j DROP
Лучший метод - это аппаратный метод.
Прочитайте эту статью: en.wikipedia.org: Сетевой кран.
Вы можете подключить ко второй машине 2 сетевые карты.
.----.
.---------. | == |
|.-"""""-.| |----|
|| || | == |
|| || |----|
|'-.....-'| |::::|
`"")---(""` |___.|--------. /
/:::::::::::\" _ " \ /
/:::=======:::\`\`\ | /
`"""""""""""""` '-' | \ + /
Your Personal Computer / \_________+_____/
/ + /\________+____/\ \
/ +/ /\_______+___/\ \ \ +
____/ /+/+/\______+__/\ \ \ +
.----. / / / /+/\_____+_/\ \ \+\ \
| == |/ / / /+/ \ \ + \ \ \
|----| / / / / \+\_\_\_\_\_____
| == |----------------------E | InterNet |_|_|_|_|_|_______
|----| \ \ \+\ / / / / / | | |
|::::| \ \ \+\ \_______/+/ / / / / / /
|___.| \ \+\ \/+______\/ + / / / / /
" " + \ /_+_______\/ / + / / /
Your Tap Router + \ \/__+________\/ / +/ /
+ \ \/___+_________\/ / / /+
\/____+_______+__\/ / /
/ +___________\/ /
__________\/
______\
___\
\
И понюхать все, что происходит.
Вы должны установить "маршрут по умолчанию" для отправки трафика TCP/IP через VPN. man route
, netstat -rn
, См. Также Для эффективного распределения данных с помощью двух интернет-соединений.