[prev in list] [next in list] [prev in thread] [next in thread]
List: freebsd-bugs
Subject: misc/170279: dhclient uses low TTL of 16
From: John Poznicek <johnpoz () gmail ! com>
Date: 2012-07-30 15:14:26
Message-ID: 201207301514.q6UFEQgu048831 () red ! freebsd ! org
[Download RAW message or body]
> Number: 170279
> Category: misc
> Synopsis: dhclient uses low TTL of 16
> Confidential: no
> Severity: non-critical
> Priority: low
> Responsible: freebsd-bugs
> State: open
> Quarter:
> Keywords:
> Date-Required:
> Class: sw-bug
> Submitter-Id: current-users
> Arrival-Date: Mon Jul 30 15:20:09 UTC 2012
> Closed-Date:
> Last-Modified:
> Originator: John Poznicek
> Release: 8.3
> Organization:
none
> Environment:
freebsd# uname -a
FreeBSD freebsd.local.lan 8.3-RELEASE-p3 FreeBSD 8.3-RELEASE-p3 #0: Mon Jun 11 \
23:52:38 UTC 2012 root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC \
i386
> Description:
dhclient uses by default ttl of 16, depending on isp this can prevent getting dhcp \
lease from dhcp server.
Helping user troubleshoot problem with freebsd based pfsense, user discovered that \
ttl of dhcp traffic was at 16, vs os default.
info can be found in this thread
http://forum.pfsense.org/index.php/topic,51803.0.html
Per packet.c in source,
http://svnweb.freebsd.org/base/release/8.3.0/sbin/dhclient/packet.c?revision=234063&view=markup
p.ip_ttl = 16;
Verified this with tcpdump both on freebsd machine along with on dhcp server in local \
network. TTL on dhcp traffic shows 16
10:09:51.512335 00:0c:29:9a:bc:8a (oui Unknown) > Broadcast, ethertype IPv4 (0x0800), \
length 342: (tos 0x10, ttl 16, id 0, offset 0, flags [none], proto UDP (17), length \
328)
With default dhclient user not able to get dhcp from his isp. Using modified \
dhclient where packet.c p.ip_ttl changed 128 user was able to get IP from his ISP \
dhcp server.
> How-To-Repeat:
Request lease and check dhcp traffic for ttl.
10:09:51.512335 00:0c:29:9a:bc:8a (oui Unknown) > Broadcast, ethertype IPv4 (0x0800), \
length 342: (tos 0x10, ttl 16, id 0, offset 0, flags [none], proto UDP (17), length \
328)
> Fix:
Changed
p.ip_ttl = 16;
To be
p.ip_ttl = 128;
Ran make, used this new modified dhclient, verified via tcpdump that client was now \
setting ttl to 128
This allowed dhclient to obtain ip address from dhcp server.
10:04:47.893610 00:0c:29:9a:bc:8a (oui Unknown) > Broadcast, ethertype IPv4 (0x0800), \
length 342: (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length \
328)
> Release-Note:
> Audit-Trail:
> Unformatted:
_______________________________________________
freebsd-bugs@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "freebsd-bugs-unsubscribe@freebsd.org"
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic