ip link add macvlan2 link ovs_eth0 type macvlan mode bridge
ip addr add 192.168.1.90 dev macvlan2
ip link set macvlan2 up
ip route add 192.168.1.95 dev macvlan2
root@Yanni-CloudNas:~# ip route show
default via 192.168.1.1 dev ovs_eth0 src 192.168.1.96
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
192.168.1.0/24 dev ovs_eth0 proto kernel scope link src 192.168.1.96
192.168.1.95 dev macvlan2 scope link
debian系Linux在/etc/network/interfaces文件添加以下配置,就可以实现重启永久有效。
auto macvlan
iface macvlan inet static
address 192.168.2.34
netmask 255.255.255.0
gateway 192.168.2.3
pre-up ip link add macvlan link eth0 type macvlan mode bridge
post-down ip link del macvlan link eth0 type macvlan mode bridge
42 comments
你的才华让人惊叹,请继续保持。
不错不错,我喜欢看
不错不错,我喜欢看
按照这个设置了,开启了混杂模式,依旧ping不通macvlan容器
大老好,感谢!
有个问题想请教,我加桥和路由后,宿主机可以ping通容器,但容器ping不通宿主机!!
docker network create -d macvlan \
--subnet=192.168.1.0/24 \
--gateway=192.168.1.1 \
--ipv6 --subnet=fe80::/60 \
-o parent=ovs_eth0 macvlan
ip link add macvlan2 link ovs_eth0 type macvlan mode bridge
ip addr add 192.168.1.90 dev macvlan2
ip link set macvlan2 up
ip route add 192.168.1.95 dev macvlan2
同样的问题,请问有解决嘛
同样的问题,我也是 宿主机可以ping通容器,但容器ping不通宿主机
你解决了吗?
root@Yanni-CloudNas:~# ip route show
default via 192.168.1.1 dev ovs_eth0 src 192.168.1.96
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
192.168.1.0/24 dev ovs_eth0 proto kernel scope link src 192.168.1.96
192.168.1.95 dev macvlan2 scope link
那如果我所有容器都用macvlan模式创建,是不是就可以互访了。。。
应该是的,你可以试试
测试了好几天,有些镜像使用这个模式就无法启动,有些启动后无法访问甚至ping不通,好奇怪。。。感谢回复。。。
看看网卡有没有开混杂模式,有没有开启ip转发功能
[...]以上配置之后,会出现macvlan模式容器与宿主机通信问题,可以通过如下配置进行设置【Docker】macvlan网络模式下容器与宿主机互通https://rehtt.com/index.php/archives/236/[...]
有点看不懂,创建macvlan2了,只是让192.168.1.20走了macvlan2,但macvlan2却没有和主机通讯呀。
ip link add macvlan2 link eth0 type macvlan mode bridge
ip route add 192.168.1.20 dev macvlan2
这个网桥建立了后再设置路由后就通了
[...]https://rehtt.com/index.php/archives/236/[...]
[...]https://rehtt.com/index.php/archives/236/[...]
[...]https://rehtt.com/index.php/archives/236/[...]
[...]https://rehtt.com/index.php/archives/236/[...]
[...]https://rehtt.com/index.php/archives/236/[...]
非常感谢提供的方案,解决了。还请教一个问题,怎么让这些配置永久生效呢。
[...]https://rehtt.com/index.php/archives/236/[...]
๑
๑´•ω•"ㆆᴗㆆ
ㆆᴗㆆ简洁有效
debian系Linux在/etc/network/interfaces文件添加以下配置,就可以实现重启永久有效。
auto macvlan
iface macvlan inet static
address 192.168.2.34
netmask 255.255.255.0
gateway 192.168.2.3
pre-up ip link add macvlan link eth0 type macvlan mode bridge
post-down ip link del macvlan link eth0 type macvlan mode bridge
好使,不过重启会失效,有什么办法开机就自动设好呢
emmm,加个开机脚本(?
(´இ皿இ`)找了好久,终于可以解决问题了
能提供有效帮助就是我写博客的初心(*^_^*)
重启就消失了,怎么配置重启不丢呢?
emmm,加个开机脚本(?
adguard home容器用的是同路由器段的ip建立的macvlan,现在DNS设置成容器ip以后所有的都能管理到唯独群晖,和群晖docker下的容器无作用,什么方法可以解决这个问题
ip link add macvlan2 link eth0 type macvlan mode bridge
这里是加个特殊的网桥。
宿主机是x.x.x.2,路由器网关是.1,但是macvlan分配完地址之后,是自动从x.x.x.2开始,和宿主机冲突,请教这个问题怎么解决?
--aux-address保留地址,参考这篇:https://blog.oddbit.com/post/2018-03-12-using-docker-macvlan-networks/
macvlan网络设置的ip是docker分配的,要是我想用路由器dhcp分配的ip 需要怎样设置呢 请问??
创建macvlan的时候把gateway设为路由器的ip,subnet设为路由器的子网
比如:docker network create -d macvlan --subnet 192.168.50.0/24 --gateway 192.168.50.1 -o parent=eth0 macnet
在创建容器时,不指定ip就行了
例如:docker run --network macnet -itd alpine
容器的ip是docker分配的,要是我想用局域网dhcp分配的ip 需要怎样设置呢 请问??
太有用了,终于解决了。
重启好像会失效,得自己加入开机启动
碉堡了,外网找了好久也没找到解决方案,这里找到了
嘿嘿,能提供帮助是我的荣幸
rehtt nb