Ipv6

在 OpenWRT 的命令行中顯示委派的 ipv6 前綴

  • January 4, 2022

在 OpenWRT 的 gui “LuCI” 中,ISP 提供的委託 IPv6 前綴顯示在概覽的狀態頁面中。通常它會顯示在“網路”部分的“IPv6 WAN 狀態”下,例如

IPv6 WAN Status  Type: dhcpv6-pd
                Prefix Delegated: 2001:db8:1234:5678::/56
                Address: 2001:db8::abcd/128
                […]

但是我想弄清楚命令行上的委派前綴。我知道我可以通過ip a網關或其他路由獲取分配的地址,ip r但從未設法檢索路由器委派的前綴。

如何在命令行界面中顯示委派的 ipv6 前綴?是否有我遺漏的命令或寫入了一些我不知道的文件?

提供此類資訊的命令是ifstatus

root@openWRT:~# ifstatus wan6
[…]
"ipv6-prefix": [
   {
       "address": "2001:db8:1234:5678",
       "mask": 56,
[…]

您可能希望使用jq程序來解析輸出(在 OpenWRT 中作為包提供)。

此外,如果您知道該介面存在,則可以ubus直接呼叫底層命令,從而節省ifstatus.

ubus call network.interface.wan_6 status | jq -r '.["ipv6-prefix"][0].address'

輸出:

2001:db8:1234:5678::

注:(wan_6帶下劃線)為自動生成的ipv6介面名稱。如果您有手動創建的別名,則該名稱wan6可能適用。

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