Простая политика маршрутизации источника на маршрутизаторе dd-wrt не "прилипает"
Состояние цели: пусть трафик с одного компьютера в моей локальной сети использует настройку VPN-туннеля между моим маршрутизатором и поставщиком OpenVPN и не затрагивает весь другой трафик.
Вот некоторая соответствующая информация о моем маршрутизаторе:
- Модель: Netgear WNDR3400
- FCC ID: PY309300116
- Прошивка: DD-WRT v24-sp2 (12.08.11) мега, сборка 17990М
- По подсказке роутера (через
ssh
),
root @ hermes # nvram show | grep bytes размер: 33129 байт (32407 слева)
Маршрутизатор DD-WRT (Гермес 10.1.1.1
) настроен как клиент OpenVPN и успешно подключается к серверу OpenVPN (torchwood) 10.8.0.1
).
Я проверил это, запустив tail -f /var/log/openvpn.log
на факеле, и работает ping 10.8.0.1
на гермес, а также проверки содержимого /tmp/var/log/openvpn.log
на hermes - я определенно могу видеть, что torchwood получает трафик пинг от hermes.
То, что я пытаюсь сделать, это использовать простую маршрутизацию политики источника, чтобы другой компьютер (Соломон 10.1.1.20
) в моей локальной сети весь трафик будет маршрутизироваться через VPN-соединение. Однако мои попытки настроить таблицу, как в примере, не увенчались успехом.
Вот шаги, которые я делаю:
- Используя веб-интерфейс маршрутизатора, я помещаю следующее в качестве сценария брандмауэра:
iptables -I INPUT 1 -p tcp --dport 1194 -j ПРИНЯТЬ iptables -I FORWARD 1 - источник 10.8.0.0/24 -j ПРИНЯТЬ iptables -I FORWARD -i br0 -o tun1 -j ПРИНЯТЬ iptables -I FORWARD -i tun1 -o br0 -j ПРИНЯТЬ
- Я сохраняю скрипт брандмауэра и перезагружаю роутер.
- На отдельном компьютере (Ларс) я ssh в Гермес.
- На Гермесе я запускаю следующие команды:
root @ hermes # mkdir / tmp / etc / iproute2 root @ hermes # echo "200 ovpn" >> / tmp / etc / iproute2 / rt_tables root @ hermes # ip правило добавить из всех 10.1.1.20 поиск ovpn root@hermes# ip route добавить по умолчанию через 10.8.0.1 dev tun1 table ovpn root@hermes# ip route flush cache
Конечным результатом является то, что iproute2
папка создана, и 200 ovpn
это содержимое rt_tables
файл в этой папке. Тем не менее, когда я бегу:
root @ hermes # список правил ip 0: из всех мест поиска 32766: из всех поисков главная 32767: из всех поисков по умолчанию root@hermes# ip route show table ovpn root@hermes# ip route показать таблицу все 10.8.0.5 dev tun1 src 10.8.0.6 XYZ1 dev vlan2 10.8.0.0/24 через 10.8.0.5 dev tun1 10.1.10.0/24 через 10.8.0.5 dev tun1 10.1.1.0/24 dev br0 src 10.1.1.1 XYZ0/21 dev vlan2 src XYZW 169.254.0.0/16 dev br0 src 169.254.255.1 127.0.0.0/8 dev lo по умолчанию через XYZ1 dev vlan2 трансляция 127.255.255.255 dev lo src 127.0.0.1 трансляция XYZ0 dev vlan2 src XYZW местный 169.254.255.1 dev br0 src 169.254.255.1 локальный 10.8.0.6 dev tun1 src 10.8.0.6 трансляция XYZ255 dev vlan2 src XYZW трансляция 169.254.0.0 dev br0 src 169.254.255.1 трансляция 10.1.1.255 dev br0 src 10.1.1.1 трансляция 169.254.255.255 dev br0 src 169.254.255.1 местный XYZW dev vlan2 src XYZW широковещательная передача 127.0.0.0 dev lo src 127.0.0.1 трансляция 10.1.1.0 dev br0 src 10.1.1.1 локальный 127.0.0.1 dev lo src 127.0.0.1 локальный 10.1.1.1 dev br0 src 10.1.1.1 местный 127.0.0.0/8 dev lo src 127.0.0.1 root@hermes# ifconfig tun1 tun1 Ссылка на код:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.6 PtP:10.8.0.5 Маска:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Метрика: 1 Пакеты RX: 3 ошибки: 0 отброшено: 0 переполнений: 0 кадр: 0 Пакеты TX: 3 ошибки: 0 отброшено: 0 переполнений: 0 несущая: 0 столкновений:0 txqueuelen:100 Байты RX:252 (252,0 B) байты TX:252 (252,0 B)
Ни одна из команд не выводит информацию, которую я только что добавил. Я также попытался добавить команды в сценарий запуска в веб-интерфейсе маршрутизатора и /tmp/openvpn/route-up.sh
без результатов.
- Как правильно сделать это, чтобы конфигурация сохранялась?
- Строго ли необходим скрипт брандмауэра?
- Достигнет ли эта установка цели выхода Соломона через VPN и оставления всего остального трафика без изменений?
Также: есть ли альтернатива? Например, возможно, если я пропущу настройку VPN на маршрутизаторе и вместо этого установлю ссылку OpenVPN от solomon напрямую к torchwood, то мне придется только изменить таблицу маршрутизации на solomon?