¿Los paquetes no van a la interfaz correcta?

¿Los paquetes no van a la interfaz correcta?

Después de que mi aplicación inyecta un paquete con source 100.64.0.77y destination 192.168.1.95dentro de la interfaz virtual utun2, el paquete se reenvía a la en0interfaz y se envía a su destino como se esperaba. Sin embargo, cuando se recibe un paquete de respuesta de source 192.168.1.95a destination 100.64.0.77, se recibe en la en0interfaz.

¿Cómo puedo hacer que reciba este paquete de respuesta utun2para que mi solicitud pueda leerlo?

ifconfig para utun2: inet 100.64.0.77 --> 100.64.0.77 netmask 0xffffff00

Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.254      UGSc           en0       
default            link#10            UCSI         utun2       
100.64.0.77        100.64.0.77        UH           utun2       
127                127.0.0.1          UCS            lo0       
127.0.0.1          127.0.0.1          UH             lo0       
169.254            link#7             UCS            en0      !
192.168.1          link#7             UCS            en0      !
192.168.1          link#10            UCSI         utun2       
192.168.1.92/32    link#7             UCS            en0      !
192.168.1.99       8c:a9:82:2e:d6:2e  UHLWI          en0    986
192.168.1.254/32   link#7             UCS            en0      !
192.168.1.254      70:f1:96:86:e6:a0  UHLWIir        en0   1196
224.0.0/4          link#7             UmCS           en0      !
224.0.0/4          link#10            UmCSI        utun2       
224.0.0.251        1:0:5e:0:0:fb      UHmLWI         en0       
255.255.255.255/32 link#7             UCS            en0      !
255.255.255.255/32 link#10            UCSI         utun2   

Respuesta1

Me parece bien. Si está utilizando NAT de origen desde TUN a en0, también debe usar la tabla NAT para la ruta inversa. Sin NAT, sólo es necesario reenviar el paquete.

información relacionada