宿主机使用 openwrt 作为网关,且已经设置了 macvlan 的桥接访问 使用 ping 8.8.8.8 结果 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. From 192.168.0.11 icmp_seq=1 Destination Host Unreachable From 192.168.0.11 icmp_seq=2 Destination Host Unreachable
但是可以通过使用 openwrt 的 http 代理来访问 如:curl -x http://192.168.0.188:10809 https://www.youtube.com
1
chenset 53 天前
大概需要再创建一个 macvlan 虚拟网卡, 然后让宿主机跟 macvlan 的容器借助新创建的虚拟网卡走独立的 macvlan 网络.
有做这个吗? |
2
liuweiqing OP @chenset 做了,宿主机可以直接请求到 openwrt 的网页内容
|
3
chenset 53 天前 1
@liuweiqing 是已经做了这个吗?
ip link add macvlan2host link eth1 type macvlan mode bridge # eth1 改为自己的网卡 ip addr add 10.0.0.111/32 dev macvlan2host # 给 macvlan2host link 网卡增加随便一个 IP ip link set macvlan2host up |
4
chenset 53 天前 1
然后可以再打印一下路由表。route -n
|
5
mayli 53 天前
Macvlan 的缺点就是宿主机没法直接访问…
|
6
liuweiqing OP @chenset
ip link add macvlan0 link enp1s0 type macvlan mode bridge # 注意重启后不保留 ip addr add 192.168.0.198/24 dev macvlan0 # 分配在与容器相同子网内的 IP ip link set macvlan0 up ip route add 192.168.0.188 dev macvlan0 路由表: default via 192.168.0.188 dev enp1s0 proto static metric 100 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 172.24.0.0/16 dev zthnhmvzsx proto kernel scope link src 172.24.66.92 192.168.0.0/24 dev macvlan0 proto kernel scope link src 192.168.0.198 192.168.0.0/24 dev enp1s0 proto kernel scope link src 192.168.0.11 metric 100 192.168.0.188 dev macvlan0 scope link 谢谢大佬 |
7
chenset 53 天前 1
我们的第一行不一样, 看看是不是这里了.
你的默认网关走 enp1s0, 我的默认网关走 macvlan 你的: default via 192.168.0.188 dev enp1s0 proto static metric 100 我的: default via 10.0.0.4 dev macvlan2host |
8
liuweiqing OP @chenset 天哪,成功了,谢谢大佬
|
9
liuweiqing OP @chenset
路由表改成你说的了 default via 192.168.0.188 dev macvlan0 metric 100 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 172.24.0.0/16 dev zthnhmvzsx proto kernel scope link src 172.24.66.92 192.168.0.0/24 dev macvlan0 proto kernel scope link src 192.168.0.198 192.168.0.0/24 dev enp1s0 proto kernel scope link src 192.168.0.11 metric 100 192.168.0.188 dev macvlan0 scope link |