Ipv6

Debian 7 如何設置 IPv6 連結本地地址?

  • January 14, 2015

似乎當 dhclient 在 eth0 上執行時,我從 DHCP 伺服器獲得了一個 IPv4 地址和一個 Scope:Link IPv6 地址附加到 eth0:

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

但我無法從 dhclient-script 中看到該地址是如何添加的。在另一個具有靜態 IP 地址的介面上,我想添加一個連結本地 IPv6 地址,我想知道是否有一個通用命令可以在不知道 mac 的情況下執行此操作。

編輯:

當您執行“ip link set dev ethX up”或“ifconfig ethX up”時,核心似乎分配了連結本地​​地址。但是,在我的情況下,我有一根電纜插入了正在 DHCP 的介面,並且沒有電纜插入我靜態設置的介面。直到星期一才能驗證,但我猜如果沒有連結,核心不會將連結本地地址分配給介面。

鏈路本地地址派生自設備的 MAC 地址。它們是作為啟動界面的一部分自動生成的。自動配置包括一個發現過程,以確保地址在網路上是唯一的。

當路由器通告可用時,類似的過程用於自動配置可路由地址。這些地址可能會定期重新生成以提供隱私。

RFC 4862指定了要遵循的流程。

找到了!這個命令是不夠的:

ifconfig eth0 up

相反,我必須這樣做:

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

只有後者會恢復 eth0 上的 IPv6 鏈路本地地址。

換句話說,我的發行版似乎在某處隱藏了一些程式碼,net.ipv6.conf.eth0.disable_ipv6每次要求它啟動或關閉網路時,這些程式碼都會動態變化。你的旅費可能會改變。

僅僅因為:

sysctl -a | grep ipv6

引用自:https://serverfault.com/questions/524886