如何找到我的系统的 DHCPv6 DUID?

Thi*_*ter 9 dhcp

我想使用 DHCPv6 为运行 Ubuntu Server 15 的计算机分配静态 IPv6 地址。为此,我需要知道DHCP 客户端使用的DUID ,以便我可以在网络的 DHCP 服务器中为其分配静态 IP。

如何查明正在使用哪个 DUID?

Bry*_*son 5

Ubuntu 服务器使用一些标志调用 dhclient,但大部分是默认选项,因此默认为类型 1 DUID-LLT DUID。Ubuntu 桌面使用网络管理器,然后使用类型 4 DUID-UUID DUID 调用 dhclient。

对于服务器,它把它放在 /var/lib/dh​​cp/dhclient6.......lease
对于桌面,它把它放在 /var/lib/NetworkManager/dhclient6.......lease

这是一个奇怪的字符串,看起来像:
default-duid "\000\001\000\001\037\305\371\341\001\002\003\004\005\006"

这是一个简短的脚本,您可以使用它将其转换为正常的十六进制格式 duid。
只需运行如下脚本:

./script '\000\001\000\001\037\305\371\341\001\002\003\004\005\006'
Run Code Online (Sandbox Code Playgroud)

剧本:

#!/bin/bash

printf $1 | hexdump -e '14/1 "%02x " "\n"' | sed 's/ /:/g'
Run Code Online (Sandbox Code Playgroud)


小智 0

如果您将 DHCP 与 ISC dhcpd 一起使用,请查看:

/etc/dhcp/dhclient6.conf


如果您使用 dibbler 作为 dhcp 客户端,请检查以下位置中的 DUID:

/var/lib/dibbler/client-duid

/etc/dibbler/client.conf如果还有其他位,也可能值得检查。