每个 IPv6 地址可以有自己的网关吗?

每个 IPv6 地址可以有自己的网关吗?

我有 /64 子网 ipv6 地址。我的目的是将它们用作 cURL 的不同传出 ip 地址。

当我将以下行添加到“/etc/network/interfaces”时,它就像魔法一样工作,但是当文件像 eth0:65000 一样增加时,服务器就会崩溃,我无法再从 ssh 连接它。

auto eth0:1
iface eth0:1 inet6 static 
address 2001:db8:5555:6666:0000:0000:0000:0000 
netmask 64 
gateway 2001:db8:5555:6666:0000:0000:0000:0000 
autoconf 0 
dns-nameservers 2001:4860:4860::8844 2001:4860:4860::8888 8.8.8.8 
post-up ip -6 addr add 2001:db8:5555:6666:0000:0000:0000:0000/64 dev 

有没有办法将每个 ipv6 地址用作传出 ip 地址?

如果它有助于 sysctl.conf 文件内容

net.ipv6.conf.all.autoconf = 0
net.ipv6.conf.default.autoconf = 0
net.ipv6.conf.eth0.autoconf = 0
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.default.accept_ra = 0
net.ipv6.conf.eth0.accept_ra = 0
net.core.somaxconn = 4096

谢谢。

答案1

您可以在 curl 上使用参数 --interface 来使用特定的接口 IP。

将您需要使用的每个 IP 配置为 eth0 的子接口,并使用 --interface 参数调用 curl。如果您需要使用所有配置的 IP,请使用一段时间。

相关内容