docker里镜像用ipv6无法访问_虚拟服务器端口设置

docker里镜像用ipv6无法访问_虚拟服务器端口设置前言我有一个朋友,他在Dev和Test服务器用Docker搭建了Redis供项目使用,然后今天Test环境的Redis端口访问不通了,在服务上可以正常连接,真是离了个大齐,让我们试试排查排查问题;正文端口检测lsof已确认在本地用telnetip6381访问不通,那就上服务上看看端口情况DevTestDev环境同时映射到Ipv6和Ipv4端口,Test环境仅映射到Ipv6,那基本上就可以断定是环境问题了容器状态dockerps既然端口映射

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

我有一个朋友, 他在Dev 和 Test 服务器用Docker 搭建了Redis 供项目使用, 然后今天Test 环境的Redis 端口访问不通了, 在服务上可以正常连接, 真是离了个大齐, 让我们试试排查排查问题;

在这里插入图片描述

正文

端口检测 lsof

已确认在本地用 telnet ip 6381 访问不通, 那就上服务上看看端口情况

Dev
在这里插入图片描述
Test
在这里插入图片描述
Dev环境同时映射到Ipv6和Ipv4端口, Test环境仅映射到Ipv6, 那基本上就可以断定是环境问题了

容器状态 docker ps

既然端口映射有问题, 就先看下容器的状态
Dev
在这里插入图片描述

Test
在这里插入图片描述
可以看到Dev同时映射了Ipv6和Ipv4, Test只映射了Ipv4, 这就能解释上面的情况了, 他说他搭建命令是一样的, emmm那就是环境问题, 看看Docker版本

Docker版本 docker -v

果然Test 版本是 Docker version 1.13.1, Dev 版本是Docker version 20.10.8, 这就能讲通为何同样的搭建命令但映射的不同;

但这又产生了一个新问题, 之前是这样是可以访问的, Ipv6 是可以兼容访问Ipv4的, Ipv4不能访问ipv6; 会不会是Ipv4的转发出了问题!

数据包转发 net.ipv4.ip_forward

当主机拥有多于一块的网卡时,其中一块收到数据包,根据数据包的目的ip地址将数据包发往本机另一块网卡,该网卡根据路由表继续发送数据包。这通常是路由器所要实现的功能;

执行 /sbin/sysctl net.ipv4.ip_forward 查看:

net.ipv4.ip_forward = 0

果然没开, 那就把这个转发打开

临时修改 net.ipv4.ip_forward

可以用 sysctl -w net.ipv4.ip_forward=1
或者 echo 1 > /proc/sys/net/ipv4/ip_forward

重启Redis 容器 docker restart redis, 可以访问通了!
那就把这个配置永久生效

永久修改 net.ipv4.ip_forward

vim 修改文件/etc/sysctl.conf:

net.ipv4.ip_forward = 1

保存后调用 sysctl -p 生效, ok问题解决;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183735.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • centos7.6安装docker_docker自动部署多环境

    centos7.6安装docker_docker自动部署多环境前言前面一篇学了mac安装docker,这篇来学习在linux上安装docker环境准备Docker支持以下的CentOS版本,目前,CentOS仅发行版本中的内核支持Docker。Doc

    2022年7月30日
    6
  • docker(6)镜像的使用「建议收藏」

    docker(6)镜像的使用「建议收藏」前言Docker的三大核心概念:镜像、容器、仓库。初学者对镜像和容器往往分不清楚,学过面向对象的应该知道类和实例,这跟面向对象里面的概念很相似我们可以把镜像看作类,把容器看作类实例化后的对象。|

    2022年8月6日
    4
  • 群晖 docker 端口_群晖 l2tp

    群晖 docker 端口_群晖 l2tp最近群晖docker某个容器端口总是被扫描,系统自动封禁了很多IP,遂想更改端口,个人对Linux和docker非常不熟悉,只做记录,如有错误,欢迎指出流程分为以下几个步骤:停止容器修改端口映射重启docker停止容器首先用dockerps命令查看所有的容器名称和id例如容器ID为a1b2c3用dockerstopa1b2c3来停止容器修改端口映射修改端口映射主要在了两个文件hostconfig.json和config.v2.json下面是如何找到这两个文件的路径利用cd/v

    2022年10月18日
    4
  • centos安装指定版本docker或软件

    centos安装指定版本docker或软件

    2021年6月1日
    115
  • docker下载安装教程_docker镜像存储位置

    docker下载安装教程_docker镜像存储位置前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月29日
    4
  • 群晖docker使用教程_docker的使用

    群晖docker使用教程_docker的使用概括Docker与传统虚拟机的区别与传统虚拟机的区别Docker的安装的安装Dockerdaemon,client,containerd镜像与容器操作容器运行配置Docker网络配置网络配置AlpineDockerImage制作自己的DockerImageDocker安全性问题安全性问题Dock

    2022年10月9日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号