的使用
ip r通过172.20.10.10 src 10.0.100.10添加0.0.0.0
错误:无效的prefsrc地址
目标: netns (主机) => ppp0 =>因特网通过ppp0
我的配置:
/home# ip netns
ns2
ns1 (id: 0) <<<<<<<<<<<<<<<<<<
/home# ip netns exec ns1 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: ip_vti0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
link/ipip 0.0.0.0 brd 0.0.0.0
15: virt1@if14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 02:e6:f6:3a:19:2f brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 10.0.100.10/24 scope global virt1 <<<<<<<<<<<<<<<<<<<<<<<<<<<
valid_lft forever preferred_lft forever
inet6 fe80::e6:f6ff:fe3a:192f/64 scope link
valid_lft forever preferred_lft forever
/home# ip netns exec ns1 ip r
default via 10.0.100.1 dev virt1
10.0.100.0/24 dev virt1 proto kernel scope link src 10.0.100.10
/home# 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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 11:22:33:44:31:34 brd ff:ff:ff:ff:ff:ff
inet 1.2.3.4/20 brd 1.2.3.255 scope global eth0
valid_lft forever preferred_lft forever
inet 10.10.0.8/16 brd 10.10.255.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 1111::2222:3333:4444:5555/64 scope link
valid_lft forever preferred_lft forever
5: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1450 qdisc fq_codel state UNKNOWN group default qlen 3
link/ppp
inet 172.20.10.1 peer 172.20.10.10/32 scope global ppp0
valid_lft forever preferred_lft forever
14: virt-h@if15: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether f2:7e:68:40:ff:13 brd ff:ff:ff:ff:ff:ff link-netns ns1
inet 10.0.100.1/24 scope global virt-h <<<<<<<<<<<<
valid_lft forever preferred_lft forever
inet6 fe80::f07e:68ff:fe40:ff13/64 scope link
valid_lft forever preferred_lft forevernetns : virt1 <> virt
/home# ip r
default via 1.2.3.4 dev eth0 proto static
10.0.100.0/24 dev virt-h proto kernel scope link src 10.0.100.1
1.2.3.0/20 dev eth0 proto kernel scope link src 1.2.3.4
172.20.10.10 dev ppp0 proto kernel scope link src 172.20.10.1转发开始了。netns设置为以下所写的:https://blogs.igalia.com/dpino/2016/04/10/network-namespaces/
此外:
/home# ip netns exec ns1 ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=2.39 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=1.52 ms
/home# ip netns exec ns1 ping 172.20.10.1
PING 172.20.10.1 (172.20.10.1) 56(84) bytes of data.
64 bytes from 172.20.10.1: icmp_seq=1 ttl=64 time=0.071 ms
64 bytes from 172.20.10.1: icmp_seq=2 ttl=64 time=0.118 msUPD 1:应该在主机上设置此路由,但对于注释来说,这也会导致错误(如用为什么“Nexthop有无效的网关”,当它似乎被定义?编写的):
/home# ip netns exec ns1 ip r add default via 172.20.10.10 src 10.0.100.10
Error: Nexthop has invalid gateway.发布于 2022-06-14 20:01:15
另一个问题似乎是,当您将活动ppp接口移动到另一个命名空间时,它的IP地址和对等IP地址将被归零。我试图设置一个VPN,然后将ppp接口移动到名称空间中作为它的唯一接口,就像您可以对WireGuard做的那样,但是在这种情况下,VPN是使用ppp接口的L2TP。
发布于 2021-07-01 16:35:09
解决办法是:
0.0.0.0 => 0.0.0.0/0
但任务没有解决,完全解决办法是:
/etc/iproute2/rt_tables添加规则src不需要设置为默认规则在所有本地网络接口上工作。
https://serverfault.com/questions/1068278
复制相似问题