我这里有一个小办公室,有几个工作站,我想为代理服务器、samba等实现一个小型服务器。这是所述网络的拓扑结构:
+-----+ dynamic +--------+ +-------------------+ +--+workstation1
| | /56 prefix | | | Debian server | +--------+
| ISP +--------------+ Router +-+eth0+-+ +-+eth1+-+ switch +--+workstation2
| | dynamic | | | (squid,dhcp,etc.) | +--------+
+-----+ IPv4 address +--------+ +-------------------+ +--+workstationX我希望服务器将全局(可能也是本地) IPv6地址和私有IPv4地址分配给通过交换机连接到eth1的所有设备。我已经能够让NAT伪装使用dnsmasq和iptables,但我无法获得IPv6流量,甚至无法分发IPv6地址。路由器在IPv6 DHCP服务器选项卡中有三个不同的设置:
我试着遵循这个向导。,它描述了如何使用dnsmasq设置DHCPv6服务器。我有一个工作的eth0,它得到一个全局的、唯一的本地地址和一个链接本地地址。但是我的eth1接口从来没有得到一个全局IPv6地址,只有一个链接本地地址。服务器后面的设备都有一个工作的IPv4地址,但我不能将IP设置为静态地址,因为前缀是动态的,并且每晚都在变化。现在我被困在这点上了。
这里是我的配置文件。
谢谢你的帮助。
发布于 2015-11-23 13:02:16
我找到路了。我的接口eth0获得了它的IP,因为在/etc/sysctl.conf中启用了net.ipv6.conf.eth0.accept_ra=2。wide 6客户端再次尝试设置eth0地址,但路由器广告已经设置了它。因此,如果您想让wide 6客户机只将ip设置为内部接口(在我的例子中是eth1),则必须省略
id-assoc na 1 {
# id-assoc for eth1
};部分来自张贴的教程。否则,dhcp6c将在看到地址已经在使用后停止。
interface eth0 {
send ia-pd 1;
request domain-name;
request domain-name-servers;
script "/etc/wide-dhcpv6/dhcp6c-script";
};
id-assoc pd 1 {
prefix ::/64 infinity;
prefix-interface eth1 {
sla-len 0;
sla-id 1;
ifid 1;
};
};现在一切都像魅力一样运作。我希望这些信息能帮助任何有类似问题的人。
发布于 2015-11-22 19:29:44
您需要将IPv6地址分配给eth1,因为它无法自动配置。从您的/64中选择一个/56地址,尽管您可以使用您的/56。在下面的示例中,我使用了前缀2001:0db8:a1b2:c2d3::/64。
# This is an IPv6 interface
iface eth1 inet6 static
address 2001:0db8:a1b2:c2d3::1
netmask 64https://serverfault.com/questions/738188
复制相似问题