我试图在linux机器上使用ISC ipv6设置一个简单的DHCPv6网络。
这是我的dhcpd6.conf:
subnet6 beef:fade::/112 {
max-lease-time 3600;
range6 beef:fade::100 beef:fade::fffe;
}
dhcpv6服务器工作并在指定的范围内为连接的主机分配地址,但是,附加的设备不能互相平分,也不能使用dhcpv6服务器,因为它们使用128个作为网络掩码。
在网上我发现这是因为缺乏RA。所以我下载并启动了RADVD,启用了ipv6转发,我的防火墙也被禁用了。这是我的radvd.conf:
interface enp1s0
{
AdvSendAdvert on;
MinRtrAdvInterval 3;
MaxRtrAdvInterval 10;
prefix beef:fade::/112
{
AdvOnLink on;
AdvAutonomous off;
};
};
但这导致了拉德的说法:enp1s0 prefix length should be: 64
。但我不想要前缀长度64。我希望能把它设置成几乎任何长度,因为它变得必要。
我该怎么做呢?我唯一的要求是我必须使用ISC DHCPv6实现。
还有,假设我能让这件事成功。当在DHCPv6服务器上启用防火墙时,需要向防火墙添加哪些规则才能使其工作。
发布于 2022-03-24 17:39:03
显然,enp1s0 prefix length should be: 64
只是一个警告,而不是问题的起因。
在我的特殊情况下,这不起作用的原因是客户不接受RAs。要在linux机器上接受RAs,必须将/proc/sys/net/net/ipv6/conf/eth0/accept_ra
设置为1
或2
。
发布于 2023-01-12 15:52:23
我使用debian 11,根据我的经验,您不需要为ipv6使用状态寻址。更重要的是,使用路线广告给你的ISP给你,你不需要dhcpv6。我的联系是pppd。我现在明白了,对于ipv6,我不需要在/etc/网络/接口中设置任何设置:
auto dsl-provider
iface dsl-provider inet ppp
pre-up /bin/ip link set enp2s0 up # line maintained by pppoeconf
provider dsl-provider
allow-hotplug enp3s0
iface enp3s0 inet static
address 192.168.1.1/24
allow-hotplug enp4s0
iface enp4s0 inet static
address 192.168.2.1/24
allow-hotplug enp5s0
iface enp5s0 inet static
address 192.168.3.1/24
对于我的网络中的ip6,我在/etc/wide 6/dhcp6c.conf中使用WIDE-DHCPV6 6的简单设置:
interface ppp0 {
request domain-name-servers;
request domain-name;
send ia-na 1;
send ia-pd 1;
};
id-assoc na 1 {
};
id-assoc pd 1{
prefix ::/56 infinity;
prefix-interface enp3s0 {
sla-id 1;
sla-len 8;
};
prefix-interface enp4s0 {
sla-id 2;
sla-len 8;
};
prefix-interface enp5s0 {
sla-id 3;
sla-len 8;
};
};
参考资料:https://major.io/2015/09/11/time-warner-road-runner-linux-and-large-ipv6-subnets/现在我的网络看起来是这样的:
root@srv1:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:e2:69:59:33:6a brd ff:ff:ff:ff:ff:ff
inet6 fe80::2e2:69ff:fe59:336a/64 scope link
valid_lft forever preferred_lft forever
3: enp3s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether 00:e2:69:59:33:6b brd ff:ff:ff:ff:ff:ff
inet 192.168.1.1/24 brd 192.168.1.255 scope global enp3s0
valid_lft forever preferred_lft forever
inet6 2a02:2f0e:d114:4b01:2e2:69ff:fe59:336b/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::2e2:69ff:fe59:336b/64 scope link
valid_lft forever preferred_lft forever
4: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:e2:69:59:33:6c brd ff:ff:ff:ff:ff:ff
inet 192.168.2.1/24 brd 192.168.2.255 scope global enp4s0
valid_lft forever preferred_lft forever
inet6 2a02:2f0e:d114:4b02:2e2:69ff:fe59:336c/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::2e2:69ff:fe59:336c/64 scope link
valid_lft forever preferred_lft forever
5: enp5s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether 00:e2:69:59:33:6d brd ff:ff:ff:ff:ff:ff
inet 192.168.3.1/24 brd 192.168.3.255 scope global enp5s0
valid_lft forever preferred_lft forever
inet6 2a02:2f0e:d114:4b03:2e2:69ff:fe59:336d/64 scope global tentative
valid_lft forever preferred_lft forever
8: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast state UNKNOWN group default qlen 3
link/ppp
inet 188.27.50.191 peer 10.0.0.1/32 scope global ppp0
valid_lft forever preferred_lft forever
inet6 2a02:2f0e:d1ff:ffff::bc1b:32bf/128 scope global
valid_lft forever preferred_lft forever
inet6 fe80::bc1b:32bf peer fe80::1/128 scope link
valid_lft forever preferred_lft forever
不要忘记/etc/缺省/宽-dhcpv6 6-客户机。接下来,您需要RADVD服务,此服务使您所需的全部网络(/etc/radvd.conf):
interface enp3s0 {
AdvSendAdvert on;
MaxRtrAdvInterval 30;
prefix ::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
RDNSS 2a02:2f0c:8000:3::1 2a02:2f0c:8000:8::1 {
AdvRDNSSLifetime 30;
};
};
interface enp4s0 {
AdvSendAdvert on;
MaxRtrAdvInterval 30;
prefix ::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
RDNSS 2a02:2f0c:8000:3::1 2a02:2f0c:8000:8::1 {
AdvRDNSSLifetime 30;
};
};
interface enp5s0 {
AdvSendAdvert on;
MaxRtrAdvInterval 30;
prefix ::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
RDNSS 2a02:2f0c:8000:3::1 2a02:2f0c:8000:8::1 {
AdvRDNSSLifetime 30;
};
};
使用您自己的公共ipv6 DNS。现在!我个人发现RADVDUMP。这是一件艺术品,它展示给你所有的设置你需要什么,包括前缀来自你的ISP。这个前缀,我认为,使用一些脚本,您可以使用包容性的dhcpv6服务器,如ISC-DHCPV6 6-服务器。享受,并愉快地谷歌。
https://serverfault.com/questions/1096245
复制相似问题