Почему мой хост не получает пакеты, отправленные через tun0?

У меня настроен интерфейс tun0, который позволяет отправлять пакеты как таковой:

HOST (aaaa :: 1) ----> tun0 ----> SLIP ----> Router (aaaa :: 200: 0: 0: 1)

Маршрутизатор получает пакетов и может отправить обратно веб-страницу (на ней есть небольшой веб-сервер), которую я затем могу увидеть в браузере на хосте и в wirehark:

3205    2129.960625056  aaaa::1 aaaa::200:0:0:1 TCP 80  49192 → 80 [SYN] Seq=0 Win=28800 Len=0 MSS=1440 SACK_PERM=1 TSval=579845 TSecr=0 WS=128
3206    2129.977020758  aaaa::200:0:0:1 aaaa::1 TCP 64  80 → 49192 [SYN, ACK] Seq=0 Ack=1 Win=48 Len=0 MSS=48
3207    2129.977056613  aaaa::1 aaaa::200:0:0:1 TCP 60  49192 → 80 [ACK] Seq=1 Ack=1 Win=28800 Len=0

ОДНАКО, когда я пытаюсь сделать следующее:

Маршрутизатор (aaaa :: 200: 0: 0: 1) ----> SLIP ----> tun0 ----> HOST (aaaa :: 1)

Хост не получает пакеты (UDP ). У меня есть wirehark для захвата на tun0, и я вижу, что пакеты попадают в интерфейс ...

2164    454.682603267   aaaa::200:0:0:1 aaaa::1 UDP 73  8765 → 5678  Len=25

Однако, когда я использую netcat для мониторинга [aaaa :: 1]: 5678, я не вижу никаких поступающих пакетов.

Я достаточно убежден, что это как-то связано с тем, как маршруты и пересылка были настроены на интерфейсе tun, но я не знаю об этом достаточно, чтобы понять это.

Вот результат, когда интерфейс tunslip настроен :

slip connected to ``127.0.0.1:60001''
opened tun device ``/dev/tun0''
ifconfig tun0 inet `hostname` mtu 1500 up
ifconfig tun0 add aaaa::1/64
ifconfig tun0 add fe80::0:0:0:1/64
ifconfig tun0

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:127.0.1.1  P-t-P:127.0.1.1  Mask:255.255.255.255
          inet6 addr: fe80::1/64 Scope:Link
          inet6 addr: aaaa::1/64 Scope:Global
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

И это результат работы ip route show table local :

broadcast 127.0.0.0 dev lo  proto kernel  scope link  src 127.0.0.1 
local 127.0.0.0/8 dev lo  proto kernel  scope host  src 127.0.0.1 
local 127.0.0.1 dev lo  proto kernel  scope host  src 127.0.0.1 
local 127.0.1.1 dev tun0  proto kernel  scope host  src 127.0.1.1 
broadcast 127.255.255.255 dev lo  proto kernel  scope link  src 127.0.0.1 
broadcast 172.23.0.0 dev wlx0013ef1b001c  proto kernel  scope link  src 172.23.251.64 
local 172.23.251.64 dev wlx0013ef1b001c  proto kernel  scope host  src 172.23.251.64 
broadcast 172.23.255.255 dev wlx0013ef1b001c  proto kernel  scope link  src 172.23.251.64 
0
задан 13 July 2016 в 19:35
1 ответ

Так что это довольно неловко, но я забыл, что настроил брандмауэр на своей машине, а это означало, что все входящие соединения были заблокированы. Брандмауэр был выключен, и все работает, как должно.

0
ответ дан 5 December 2019 в 09:55

Теги

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