Невозможно добавить статический маршрут в мою Ubuntu, SIOCADDRT: сеть недоступна

553
Bahador

Я пытаюсь добавить статический маршрут в моем VPS к клиенту, который находится на другой стороне туннеля VPN, к моему VPS и перенаправляет его трафик через туннель.

Это настройка моего пункта назначения, к которому я планирую добавить маршрут. Raspi действует как маршрутизатор, который сам подключен к точке доступа, а NAS подключен к Raspi и перенаправляет свой трафик через VPN-туннель:

 +--------------------------------+ | Raspi | (192.168.0.101/24)| |(192.168.1.1/24) (192.168.0.1/24) AP<>==================================<>NAS (192.168.1.102/24) | \ / | | +----------------------+ | | | iptables and | | | | routing engine | | | +-----------+----------+ | | | | | | | 10.8.0.6 | +--------------------------------+ 

Я пытаюсь это сделать route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.8.0.6, чтобы общаться с моим NAS за Raspi, но это у меня получается SIOCADDRT: Network is unreachable.

Это информация о стороне сервера:

$ ifconfig -a

eth0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX inet addr:217.B.C.D Bcast:217.B.C.D Mask:255.255.255.255 inet6 addr: XXXX::XXX:XXXX:XXXX:XXXX/XX Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1598 errors:0 dropped:0 overruns:0 frame:0 TX packets:1453 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:176137 (176.1 KB) TX bytes:165179 (165.1 KB)  lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:9 errors:0 dropped:0 overruns:0 frame:0 TX packets:9 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:460 (460.0 B) TX bytes:460 (460.0 B)  tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:169 errors:0 dropped:0 overruns:0 frame:0 TX packets:183 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:14825 (14.8 KB) TX bytes:15071 (15.0 KB) 

$ netstat -anr

Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.255.255.1 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 10.255.255.1 0.0.0.0 255.255.255.255 UH 0 0 0 eth0 

список маршрутов $ ip

default via 10.255.255.1 dev eth0 10.8.0.0/24 via 10.8.0.2 dev tun0 10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1 10.255.255.1 dev eth0 scope link 

Дополнительная информация:

Если вам интересно, как я достиг перенаправления трафика между интерфейсами, вот мой пост, описывающий, как мне удалось все до этого момента с помощью iptables:

https://unix.stackexchange.com/questions/273926/redirect-secondary-network-interface-traffic-along-with-port-forwarding-to-tun0

Клиентский сетевой блок (в случае топологии p2p ):

10.8.0.4 : Network address 10.8.0.5 : Virtual remote endpoint; Non pingable; Only used for routing 10.8.0.6 : Client IP address 10.8.0.7 : Network broadcast address 

ОБНОВЛЕНИЕ 1:

Я изменил мою конфигурацию сервера VPN, чтобы topology subnetи ifconfig-push 10.8.0.6 255.255.255.0в соответствующем ccdфайле для клиента VPN, чтобы принести сервер VPN и клиента в /24подсети вместо, /32а затем добавить маршруты. На этот раз route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.8.0.6или не route add -net 192.168.1.0 netmask 255.255.255.0 dev tun0вернул ошибок, однако до сих пор нет ping 192.168.1.102. netstat -anrизменилось хотя (в случае route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.8.0.6).

Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.255.255.1 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0 10.255.255.1 0.0.0.0 255.255.255.255 UH 0 0 0 eth0 192.168.1.0 10.8.0.6 255.255.255.0 UG 0 0 0 tun0 
0
После добавления маршрута я проследил от моего VPS до `192.168.1.102`, и я получил * * * в самом начале. Из любопытства я на этот раз проследил из своего NAS до `10.8.0.1` и также получил * * * сразу после` 192.168.1.1`, однако трассировка до `4.2.2.4` вернула полный путь, проходящий через` 10.8 .0.1` без звезд ... Брандмауэр? Bahador 8 лет назад 0

1 ответ на вопрос

0
Bahador

Я прочитал инструкцию на:

https://openvpn.net/index.php/open-source/documentation/howto.html#scope

И я добавил route 192.168.1.0 255.255.255.0к server.confсвоему VPS, а также iroute 192.168.1.0 255.255.255.0к соответствующему ccdфайлу для клиента. А потом я использовал команду route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.8.0.6и все! Я мог бы пропинговать моего 192.168.1.102клиента позади моего клиента OpenVPN от моего VPS: D

PS: я все еще в subnet topologyрежиме. Я не пробовал это в норме p2p topology, но я думаю, что это должно работать хорошо.

Похожие вопросы