Hi vpp-dev team,

I use vpp17.10 in vagrant VM for a vcpe test,and use dnsmasq as dhcp and dns 
server。
dnsmasq is binded interface lstack,which is created by:
sudo vppctl tap connect lstack address 192.168.1.1/24
A namespace lan1 is a virtual lan network。When an interface in lan1 send a dhcp 
discover request, it can get a ip address assigned by dnsmasq,and I can see the 
packets flow by vppctl show trace。
When I send a dns query request,the interface lstack/tap-0 received the 
request,but the dnsmasq has no response。
The interface tap-0/lstack  doesn't forward dns query to dnsmasq is  bad udp 
cksum.
I failed to turn off the checksumming, and don't know why it happened.



The following is some logs, and maybe be helpful.


vagrant@localhost:~$sudo ip netns exec lan1 ping -c1 www.baidu.com 

vagrant@localhost:~$ sudo vppctl show trace
Packet 1
21:04:07:489032: af-packet-input 
af_packet: hw_if_index 2 next-index 4 
tpacket2_hdr: 
status 0x9 len 123 snaplen 123 mac 66 net 80 
sec 0x5a4f3fc3 nsec 0x69f47a6 vlan 0 vlan_tpid 0 
21:04:07:489045: ethernet-input 
IP4: 92:5d:c3:e1:15:86 -> 02:fe:11:e7:4c:c7 
21:04:07:489059: ip4-input 
UDP: 192.168.10.10 -> 192.168.10.9 
tos 0x00, ttl 64, length 109, checksum 0x0ce6 
fragment id 0xd836 
UDP: 60440 -> 4789 
length 89, checksum 0x0000 
21:04:07:489070: ip4-lookup 
fib 0 dpo-idx 7 flow hash: 0x00000000 
UDP: 192.168.10.10 -> 192.168.10.9 
tos 0x00, ttl 64, length 109, checksum 0x0ce6 
fragment id 0xd836 
UDP: 60440 -> 4789 
length 89, checksum 0x0000 
21:04:07:489080: ip4-local 
UDP: 192.168.10.10 -> 192.168.10.9 
tos 0x00, ttl 64, length 109, checksum 0x0ce6 
fragment id 0xd836 
UDP: 60440 -> 4789 
length 89, checksum 0x0000 
21:04:07:489090: ip4-udp-lookup 
UDP: src-port 60440 dst-port 4789 
21:04:07:489093: vxlan4-input 
VXLAN decap from vxlan_tunnel0 vni 101 next 1 error 0 
21:04:07:489097: l2-input 
l2-input: sw_if_index 4 dst 92:61:a3:de:b0:ca src b2:72:a6:93:be:f5 
21:04:07:489107: l2-learn 
l2-learn: sw_if_index 4 dst 92:61:a3:de:b0:ca src b2:72:a6:93:be:f5 bd_index 1 
21:04:07:489112: l2-fwd 
l2-fwd: sw_if_index 4 dst 92:61:a3:de:b0:ca src b2:72:a6:93:be:f5 bd_index 1 
21:04:07:489114: l2-output 
l2-output: sw_if_index 5 dst 92:61:a3:de:b0:ca src b2:72:a6:93:be:f5 data 08 00 
45 00 00 3b c2 8d 40 00 40 11 
21:04:07:489117: tap-0-output 
tap-0 
IP4: b2:72:a6:93:be:f5 -> 92:61:a3:de:b0:ca 
UDP: 192.168.1.10 -> 192.168.1.1 
tos 0x00, ttl 64, length 59, checksum 0xf4c8 
fragment id 0xc28d, flags DONT_FRAGMENT 
UDP: 35083 -> 53 
length 39, checksum 0x8394


vagrant@localhost:~$ sudo tcpdump -vvv -i lstack 
01:05:07.114638 IP (tos 0x0, ttl 64, id 49805, offset 0, flags [DF], proto UDP 
(17), length 59) 
192.168.1.10.35083 > 192.168.1.1.domain: [bad udp cksum 0x8394 -> 0x192f!] 
7636+ A? www.baidu.com. (31)

vagrant@localhost:~$ sudo ethtool -K lstack tx off rx off 
Cannot change rx-checksumming 



Best Regards
jzhchen
www.fiberhome.com
_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to