Debian 7如何设置IPv6链接本地地址?

好像当dhclient在eth0上运行时,我从DHCP服务器获得一个IPv4地址,并且连接到eth0的Scope:Link IPv6地址:

inet6 addr: fe80::a00:27ff:fed0:4d41/64 Scope:Link 

但是我无法从dhclient脚本中看到这个地址是如何被添加的。 在具有静态IP地址的另一个接口上,我想添加一个链接本地IPv6地址,我想知道是否有一个通用的命令来做到这一点,而不知道MAC。

编辑:
当你执行“ip link set dev ethX up”或“ifconfig ethX up”的时候,看起来内核分配了链接本地地址。 但是,在我的情况下,我有一个电缆插入到DHCP'ing接口,没有电缆插入我静态设置的接口。 直到周一才能validation,但我猜测如果没有链接,内核不会将链路本地地址分配给接口。

链路本地地址源自设备的MAC地址。 它们是自动生成的,作为界面的一部分。 自动configuration包括一个发现过程,以确保地址在networking上是唯一的。

当路由器通告可用时,使用类似的过程来自动configuration可路由地址。 这些地址可以定期重新生成以提供隐私。

RFC 4862规定了要遵循的stream程。

find了! 这个命令是不够的:

 ifconfig eth0 up 

相反,我必须这样做:

 ifconfig eth0 up sysctl -w net.ipv6.conf.eth0.disable_ipv6=0 

只有后者才能恢复eth0上的IPv6链路本地地址。

换句话说,我的发行版似乎有一些隐藏在某处的代码,它会net.ipv6.conf.eth0.disable_ipv6每次net.ipv6.conf.eth0.disable_ipv6时dynamic地改变networking的状态。 你的旅费可能会改变。

我得到了这一点的感谢仅仅是:

 sysctl -a | grep ipv6 

http://ben.akrin.com/?p=1347有一个很好的在线计算器来完成从MAC地址到链路本地ipv6地址的转换。

一旦你有地址,添加它

ip address add dev br0 scope link fe80::xxxx:xxff:fexx:xxxx