MS DNS doesn't answer to CURRENT under Hyper-V

Pavel Timofeev timp87 at gmail.com
Tue Jul 7 15:04:53 UTC 2015


Well, turning off checksum offloading by `ifconfig hn0 -txcsum
-rxcsum` definitely helps.

As for tcpdump I'm not completely sure if I did it right, but I see
"bad udp cksum" phrase:

# tcpdump -i hn0 -vvv -nn udp dst port 53
tcpdump: listening on hn0, link-type EN10MB (Ethernet), capture size
262144 bytes
18:01:19.139994 IP (tos 0x0, ttl 64, id 61218, offset 0, flags [none],
proto UDP (17), length 51)
    192.168.25.26.45683 > 192.168.25.3.53: [bad udp cksum 0xb39e ->
0xf210!] 52886+ A? ya.ru. (23)
18:01:24.140544 IP (tos 0x0, ttl 64, id 17293, offset 0, flags [none],
proto UDP (17), length 51)
    192.168.25.26.12575 > 192.168.25.3.53: [bad udp cksum 0xb39e ->
0x7365!] 52886+ A? ya.ru. (23)

2015-07-07 16:09 GMT+03:00 Slawa Olhovchenkov <slw at zxy.spb.ru>:
> On Tue, Jul 07, 2015 at 02:50:49PM +0300, Pavel Timofeev wrote:
>
>> Hi!
>> I have a test virtual machine which runs CURRENT under Hyper-V. It's
>> amd64 r285198 now.
>> It can't get any response from MS DNS server. Well, it could two or
>> three weeks ago, but after upgrade it's not able to do it anymore.
>> Google DNS answers without problems meanwhile (sic!).
>>
>> What I do:
>> # host google.ru 192.168.25.3
>> I see that MS DNS (192.168.25.3) server receives these packets, but
>> ignores them.
>> And no matter how my system asks MS DNS. Every daemon can't get response too.
>>
>> I know that nothing was changed in MS DNS server. No doubt.
>> Then I tried different available CURRENT snapshot ISOs.
>>
>> FreeBSD-11.0-CURRENT-amd64-20150630-r284969-disc1.iso - MS DNS does not answer.
>>
>> FreeBSD-11.0-CURRENT-amd64-20150625-r284814-disc1.iso - MS DNS does not answer.
>>
>> FreeBSD-11.0-CURRENT-amd64-20150618-r284544-disc1.iso - MS DNS answers!
>>
>> So something was committed to CURRENT between 20150618 and 20150625.
>> This something ruins communication with MS DNS.
>>
>> Then I tried latest
>> FreeBSD-11.0-CURRENT-amd64-20150630-r284969-disc1.iso on bare metal -
>> MS DNS answered!
>>
>> Looks like that something is related to Hyper-V code.
>>
>> Maybe it changes packets somehow? I can gather and provide more info
>> (tcpdump?) if you ask, it's not a problem!
>
> Author: whu
> Date: Wed Jun 24 06:01:29 2015
> New Revision: 284746
> URL: https://svnweb.freebsd.org/changeset/base/284746
>
> Log:
>   TSO and checksum offloading support for Netvsc driver on Hyper-V.
>
> =====
>
> Try tcpdump/wireshark on FreeBSD and MS DNS host.
> Check validating IP/UDP checksums.
> Try off checksum offloading on network interface
> (ifconfig ifname -txcsum -rxcsum)


More information about the freebsd-virtualization mailing list