开启左侧

飞牛docker获取ipv6地址(路由器重启配置仍有效)

发表于:2025-2-28 21:28:46 系统攻略 618

<br /> <br />

ssh进root权限

注意:我这里是小米路由器拨号,ipv6设置用的是 SLAAC+Stateless DHCPv6

一、首先创建macvlan

docker network create -d macvlan --subnet=192.168.31.0/24 --gateway=192.168.31.1 --ipv6 --subnet=fd01::/64 -o parent=enp2s0-ovs macnet

代码解释:

--subnet=192.168.31.0/24 --gateway=192.168.31.1

192.168.31.0/24是我小米路由器的ipv4子网,192.168.31.1是网关,其他路由器按自己子网修改。

--ipv6 --subnet=fd01::/64

因为路由器重启后会导致ipv6前缀和网关变动,所以只这里配置局域网fd01::/64,不指定ipv6网关,这里子网用fd00、fd01都可以。

-o parent=enp2s0-ovs macnet

enp2s0-ovs是我网卡名,macnet是创建的网络名,建好之后docker网络里面可以看见。

二、创建docker容器

这里建议用命令创建容器,可以指定ipv4地址,不然飞牛新建容器会默认从192.168.31.2开始顺序获取ip,如果ip之前被占用会有ip冲突。

直接去飞牛界面创建也可以,但是请确保从192.168.31.2起的地址没有被其他设备占用

以网心云容器魔方示例,--net=macnet --ip=192.168.31.161 指定网络和ipv4:

docker run -d --name=wxy3 --restart=always --privileged --net=macnet \
--ip=192.168.31.161 --tmpfs /run --tmpfs /tmp -v /vol1/1000/docker/wxy1:/storage:rw  images-cluster.xycloud.com/wxedge/wxedge:latest

然后可以执行命令 docker exec -it wxy3 ip addr 查看获取到的ipv6。

如果不小心从飞牛创建容器,导致ip地址冲突了,可以查看容器的目录,删除容器,然后用命令创建时指定ip地址重新创建,目录映射使用之前容器的目录。

收藏
送赞 1
分享

发表回复

评论列表(2)

感谢分享,学习了。
6 天前 回复
是不是漏了开启网卡的混杂模式命令呀
ip link set enp2s0-ovs promisc on
昨天 14:41 回复
话题