Estou com problemas para descobrir o que configurei errado. Eu não consigo levar pacotes de volta do velodyne para um servidor Fedora com 2 interfaces eth em1 e em2. Eu tenho velodyne conectado ao host em1 para hospedar com cabo eth.
Eu sei que o velodyne está bombeando pacotes UDP em 2368 Eu posso vê-los em wireshark. Eu sei que o velodyne está reagindo porque responde ao ping:
ping 192.168.0.27
PING 192.168.0.27 (192.168.0.27) 56(84) bytes of data.
64 bytes from 192.168.0.27: icmp_seq=1 ttl=64 time=1.36 ms
64 bytes from 192.168.0.27: icmp_seq=2 ttl=64 time=0.521 ms
64 bytes from 192.168.0.27: icmp_seq=3 ttl=64 time=0.353 ms
64 bytes from 192.168.0.27: icmp_seq=4 ttl=64 time=0.485 ms
Ele grava datagramas UDP de difusão em 255.255.255.255. O endereço do host em em1 é 192.168.0.200. velodyne é 192.168.0.67
ifconfig -a
em1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.200 netmask 255.255.0.0 broadcast 192.168.255.255
inet6 fe80::222:19ff:feab:d328 prefixlen 64 scopeid 0x20<link>
ether 00:22:19:ab:d3:28 txqueuelen 1000 (Ethernet)
RX packets 20457575 bytes 24210246456 (22.5 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 52 bytes 6272 (6.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Aqui está a tabela de rotas:
route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 131.135.134.240 0.0.0.0 UG 0 0 0 em2
131.135.134.0 0.0.0.0 255.255.255.0 U 0 0 0 em2
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 em1
169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 em2
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 em1
192.168.0.0 0.0.0.0 255.255.0.0 U 0 0 0 em1
Eu iniciei um soquete UDP C, mas ele permanece desconectado
netstat -an | grep udp
udp 0 0 192.168.0.200:2368 0.0.0.0:*
udp 0 0 0.0.0.0:43329 0.0.0.0:*
udp 0 0 0.0.0.0:43348 0.0.0.0:*
udp 0 0 0.0.0.0:68 0.0.0.0:*
ss -l | grep 2368
tcp UNCONN 0 0 192.168.0.200:ipproto-2368 *:*
Aqui está um cabeçalho extraído de um pacote IP / TCP / UDP do velodyne:
Ethernet II, Src: Velodyne_20:13:62 (60:76:88:20:13:62), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
1 0.000000000 192.168.0.27 255.255.255.255 UDP 1248 Source port: opentable(2368)
Destination port: opentable (2368)
User Datagram Protocol, Src Port: opentable (2368), Dst Port: opentable (2368)
O que estou fazendo de errado? Importa que seja uma interface IPV4 e IPV6 ao mesmo tempo? Existe outra maneira de adicionar host à tabela de roteamento?