NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/51450: tcptraceroute stopped working properly in 6.0 -> 7.0 transition

>Number:         51450
>Category:       kern
>Synopsis:       tcptraceroute stopped working properly in 6.0 -> 7.0 transition
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Aug 29 11:55:00 +0000 2016
>Release:        NetBSD 7.0
System: NetBSD 7.0 NetBSD 7.0 (GENERIC.201509250726Z) amd64
Architecture: x86_64
Machine: amd64
	Record the traffic to a target of tcptraceroute with tcpdump.
	Use wireshark to inspect the packet trace, notice that if the
	sender runs NetBSD 7.0, wireshark notes that the TCP "Header
	length is 0 (bogus, must be at least 20)".

	Repeat the experiment with a machine which runs NetBSD 6.x,
	and notice that tcptraceroute there works as intended, and
	that the TCP header length field is set to 5 (x4-byte words = 20).

	This causes machines which check for the TCP header length to
	discard the probe packets emitted by a NetBSD 7.0-running
	machine before detecting whether the port is open, and can
	lead you to mistakenly conclude where the problem lies.

	See above.

	Sorry, don't know.
	The diff to sys/netinet/raw_ip.c doesn't appear to shed much
	light on what the problem might be, and neither does a similar
	diff to ip_output.c.

Home | Main Index | Thread Index | Old Index