라우터 광고 후 dhcpcd dhcpv6 시간이 초과되고 DHCPv6 요청을 보내지 않습니다.

라우터 광고 후 dhcpcd dhcpv6 시간이 초과되고 DHCPv6 요청을 보내지 않습니다.

나는 Linux 호스트를 IPv4 라우터로 사용하고 IPv6 활성화를 조사했습니다(미래라고 들었습니다). 나는 ISP로부터 주소를 얻기 위해 이미 dhcpcddhcpv4 클라이언트를 사용하고 있으므로 dhcpv6에도 사용할 것이라고 생각했습니다.

안타깝게도 요청 메시지 보내기와 dhcpv6 서버가 2x dhcpv6 광고 메시지로 응답하는 것을 볼 수 있지만 dhcpv6 요청 보내기는 dhcpcd표시되지 않습니다 .dhcpcd

다음 세 개의 메시지가 3번 반복된 후 dhcpcd시간 초과되는 시퀀스가 ​​표시됩니다.

15:41:06.457440 IP6 (flowlabel 0x1e0d7, hlim 1, next-header UDP (17) payload length: 152) fe80::aaaa:aaaa:aaaa:aaaa.dhcpv6-client > ff02::1:2.dhcpv6-server: [udp sum ok] dhcp6 solicit (xid=bc3d12 (client-ID type 4) (elapsed-time 0) (vendor-class) (rapid-commit) (IA_NA IAID:403318227 T1:0 T2:0) (Client-FQDN) (reconfigure-accept) (option-request DNS-server DNS-search-list Client-FQDN opt_82 opt_83))

15:41:07.168805 IP6 (class 0x48, hlim 56, next-header UDP (17) payload length: 140) 2001:558:4082:7f::1.dhcpv6-server > fe80::aaaa:aaaa:aaaa:aaaa.dhcpv6-client: [udp sum ok] dhcp6 advertise (xid=bc3d12 (client-ID type 4) (server-ID hwaddr/time type 1 time 493924036 40a8f0347664) (IA_NA IAID:403318227 T1:1800 T2:2880 (IA_ADDR 2001:558:600a:7f:bbbb:bbbb:bbbb:bbbb pltime:3600 vltime:3600)) (reconfigure-accept) (DNS-server cdns01.comcast.net cdns02.comcast.net) (Client-FQDN))

15:41:07.168912 IP6 (class 0x48, hlim 56, next-header UDP (17) payload length: 140) 2001:558:4082:7f::1.dhcpv6-server > fe80::aaaa:aaaa:aaaa:aaaa.dhcpv6-client: [udp sum ok] dhcp6 advertise (xid=bc3d12 (client-ID type 4) (server-ID hwaddr/time type 1 time 493924036 40a8f0347664) (IA_NA IAID:403318227 T1:1800 T2:2880 (IA_ADDR 2001:558:600a:7f:bbbb:bbbb:bbbb:bbbb pltime:3600 vltime:3600)) (reconfigure-accept) (DNS-server cdns01.comcast.net cdns02.comcast.net) (Client-FQDN))

Mar 14 15:41:05 router dhcpcd[126860]: DUID ...
Mar 14 15:41:05 router dhcpcd[126860]: enp8s0: IAID 18:0a:25:d3
Mar 14 15:41:05 router dhcpcd[126860]: enp8s0: adding address fe80::aaaa:aaaa:aaaa:aaaa
Mar 14 15:41:05 router dhcpcd[126860]: enp8s0: soliciting an IPv6 router
Mar 14 15:41:06 router dhcpcd[126860]: enp8s0: Router Advertisement from fe80::2aa:bbff:fecc:102
Mar 14 15:41:06 router dhcpcd[126860]: enp8s0: no global addresses for default route
Mar 14 15:41:06 router dhcpcd[126860]: enp8s0: soliciting a DHCPv6 lease
Mar 14 15:41:35 router dhcpcd[126860]: timed out
Mar 14 15:41:35 router dhcpcd[126860]: dhcpcd exited
$ cat /proc/sys/net/ipv6/conf/enp8s0/autoconf
1
$ cat /proc/sys/net/ipv6/conf/enp8s0/accept_ra_pinfo
1
$ cat /proc/sys/net/ipv6/conf/enp8s0/forwarding 
0
$ cat /proc/sys/net/ipv6/conf/enp8s0/accept_ra
0

나의 즉각적인 목표는 접두사 위임이나 실제 IPv6 라우팅을 수행하지 않고 이 "라우터" 호스트에서 IPv6가 작동하도록 하는 것이므로 지금은 으로 forwarding설정되어 있습니다 . 0이 호스트가 IPv6 클라이언트로 작동한 후 라우팅을 다루겠습니다.

accept_ra로 설정 2을 시도했지만 dhcpcd다시 으로 설정합니다 0.

netctl다음과 같은 매우 기본적인 프로필을 사용 하여 dhcpcd를 호출합니다 . 정확한 호출은 다음과 같습니다 dhcpcd -6 -q -t 30 enp8s0.

$ cat /etc/netctl/enp8s0 
Interface=enp8s0
Connection=ethernet
IP=dhcp
DHCPClient=dhcpcd
IP6=dhcp
DHCP6Client=dhcpcd
$ dhcpcd --version
dhcpcd 8.1.6
Copyright (c) 2006-2019 Roy Marples
Compiled in features: INET ARP ARPing IPv4LL INET6 DHCPv6 AUTH
$ cat /etc/dhcpcd.conf  | egrep -v '^#'


hostname

duid

persistent

option rapid_commit

option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
option interface_mtu


require dhcp_server_identifier

slaac private
noipv4ll

답변1

Comcast가 광고 메시지에서 보내는 클라이언트 ID를 잘못 자르는 것 같습니다. 다음 옵션을 dhcpcd사용하여 수동으로 호출했습니다 -d.

Mar 14 16:22:35 router dhcpcd[127923]: enp8s0: broadcasting SOLICIT6 (xid 0xc32482), next in 0.9 seconds
Mar 14 16:22:35 router dhcpcd[127923]: enp8s0: incorrect client ID from 2001:558:4082:7f::1
Mar 14 16:22:35 router dhcpcd[127923]: enp8s0: incorrect client ID from 2001:558:4082:7f::1

그리고 Wireshark를 사용하여 클라이언트 ID를 관찰했습니다.

11  5.308301    fe80::aaaa:aaaa:aaaa:aaaa   ff02::1:2   DHCPv6  208 Solicit XID: 0xc32482 CID: 000403000200040005000006000700080009 
12  5.360355    2001:558:4082:7f::1 fe80::aaaa:aaaa:aaaa:aaaa   DHCPv6  196 Advertise XID: 0xc32482 CID: 00040300020004000500 IAA: 2001:558:600a:7f:bbbb:bbbb:bbbb:bbbb 

유형 4 클라이언트 IDUUID 기반 DUID이며 길이는 128비트(16바이트)여야 합니다. dhcpcd올바른 길이를 보내고 있지만 comcast의 응답이 너무 짧습니다(8바이트).

dhcpcd -I 00:04:03:00:02:00:04:00:05:00 ...Comcast가 잘라내는 내용과 일치하도록 명시적인 클라이언트 ID를 보내려고 했지만 tcpdump에서는 이 옵션이 적용되지 않는다고 제안합니다. 또한 유형 4(RFC 지정)에서 유형 9(그렇지 않음)로 변경해 보았습니다. 단지 dhcpcd너무 짧은 유형 4 클라이언트 ID가 마음에 들지 않았지만 dhcpcd여전히 사용하지 않은 경우였습니다.

관련 정보