[PATCH] udhcpc6 source address is null, should be link-local address

Denys Vlasenko vda.linux at googlemail.com
Tue Aug 20 22:50:12 UTC 2013


On Tuesday 20 August 2013 23:12, Matt Whitlock wrote:
> On Tuesday, 20 August 2013, at 11:10 pm, Denys Vlasenko wrote:
> > But what if interface has no IPv6 addresses?
> > Isn't the whole purpose of DHCP is to *acquire an address*?
> 
> Interfaces that support IPv6 addressing should automatically
> have IPv6 link-local addresses assigned by the kernel.
> This happens on every modern system I've ever used.
> If you're not seeing IPv6 link-local addresses on your interfaces,
> it's probably because your kernel does not support IPv6.
> If you have a modular kernel, try loading the "ipv6" module.     

I manually configured one IPv6 address, on loopback:

# ip a
1: lo: <LOOPBACK,UP,10000> mtu 65536 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host        <----------------THIS ONE
       valid_lft forever preferred_lft forever
2: if: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:1d:7d:c2:ec:70 brd ff:ff:ff:ff:ff:ff
    inet 169.254.0.1/16 brd 169.254.255.255 scope global if
    inet 192.168.0.1/24 brd 192.168.0.255 scope global if
3: wifi0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ieee802.11 00:09:5b:69:17:c8 brd ff:ff:ff:ff:ff:ff
4: wlan0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
    link/ether 00:09:5b:69:17:c8 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.7/24 brd 10.0.0.255 scope global wlan0

As you see, other ifaces are up too but have no IPv6 addresses whatsoever.

My kernel definitely has IPv6 enabled (non-modular):
 
# grep IPV6 .config
CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
CONFIG_IPV6_ROUTER_PREF=y
CONFIG_IPV6_ROUTE_INFO=y
# CONFIG_IPV6_OPTIMISTIC_DAD is not set
CONFIG_IPV6_MIP6=m
CONFIG_IPV6_SIT=m
# CONFIG_IPV6_SIT_6RD is not set
CONFIG_IPV6_NDISC_NODETYPE=y
CONFIG_IPV6_TUNNEL=m
# CONFIG_IPV6_GRE is not set
# CONFIG_IPV6_MULTIPLE_TABLES is not set
# CONFIG_IPV6_MROUTE is not set
CONFIG_NF_DEFRAG_IPV6=m
CONFIG_NF_CONNTRACK_IPV6=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_NF_NAT_IPV6=m

Anyway, from the kernel sources I see that IPv6 autoconfiguration
can be disabled. Therefore, reradles of why my system doesn't do
autoconfiguraion the question remains:
what udhcpc6 should do in this case?

-- 
vda


More information about the busybox mailing list