!
也想出现在这里? 联系我们
广告位
当前位置:首页>教程分享>服务器教程>云服务器使用Docker启用IPV6支持与IPV6监听

云服务器使用Docker启用IPV6支持与IPV6监听

Docker安装完毕后默认是不支持IPV6方式监听和访问的,如果您的服务器支持IPV6,且有IPV6需求,可以通过下面的方法启用IPV6支持。

我的场景

先来说说我的场景,最近有个特殊需求,要求容器的某个端口只能通过IPV6访问,不支持IPV4访问。然而默认的情况却与之相反,现目前支持IPV4访问,但不支持IPV6访问。因此需要先将Docker启用IPV6支持并设置IPV6监听。

Docker启用IPV6

修改Docker配置文件/etc/docker/daemon.json,如果没有就自己新建一个。然后复制下面的内容并保存:

{  \"ipv6\": true,  \"fixed-cidr-v6\": \"2001:db8:1::/64\"}
  • 2001:db8:1::/64是一个虚拟的IPV6网段,保持上面默认的复制下来即可。

然后输入命令:systemctl reload docker重载一次Docker服务,这样Docker就支持IPV6的监听和访问了。

仅监听IPV6地址

如果要想实现上面的屏蔽IPV4访问,仅支持IPV6访问,还需要进一步操作。默认情况下我们可以通过-p参数指定监听IP和映射端口,比如我们可以指定监听127.0.0.1:80可以这样做:

docker run -itd --name=\"onenav\" -p 127.0.0.1:80:80 \\
    -v /data/onenav:/data/wwwroot/default/data \\
    helloz/onenav:0.9.27

如果只需要支持IPV6监听和访问,那么在启动容器的时候我们需要在-p参数后面使用[]来指定IPV6的IP监听,比如:

docker run -itd --name=\"onenav\" -p [2a12:a301:2::1126]:80:80 \\
    -v /data/onenav:/data/wwwroot/default/data \\
    helloz/onenav:0.9.27
  • 如果指定IPV6地址监听,需要使用[]括起来
  • 2a12:a301:2::1126改成您自己的公网IPV6地址

如果需要同时支持IPV4和IPV6的监听和访问,那么只需要去掉-p参数后面的IP地址,仅保留端口即可,比如:

docker run -itd --name=\"onenav\" -p 80:80 \\
    -v /data/onenav:/data/wwwroot/default/data \\
    helloz/onenav:0.9.27

给TA打赏
共{{data.count}}人
人已打赏
服务器教程

centos7安装telnet-server并升级安装Openssh9.0p1

2021-4-17 19:15:21

服务器教程

如何给宝塔面板管理设置域名访问而非ip地址

2021-4-17 19:15:23

声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 [email protected] 或点击右侧 私信:吉吉国王 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
OneEase