Docker容器映射到宿主机只有tcp6没有tcp问题

Posted luckjinyan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker容器映射到宿主机只有tcp6没有tcp问题相关的知识,希望对你有一定的参考价值。

问题描述:

Docker容器映射到宿主机后,查询端口连接只有tcp6没有tcp,通过ipv4地址连接时无法连接成功。

处理方法:

1.检查是否开启ipv4端口转发

sysctl net.ipv4.ip_forward 

2、若指令返回结果为net.ipv4.ip_forward = 0,执行如下指令

echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl -w net.ipv4.ip_forward=1

如上方法是临时添加的转发,重启网卡或服务器后会丢失配置。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

方法2:

修改/etc/sysctl.conf文件

添加或修改为

 net.ipv4.ip_forward=1

从指定文件加载配置:

sysctl -p /etc/sysctl.conf 

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 完成后通过netstat -an|grep 8080 仍旧显示只有tcp6,但是此时通过ipv4地址是可以访问了。

每个案例问题不同,仅供参考。

以上是关于Docker容器映射到宿主机只有tcp6没有tcp问题的主要内容,如果未能解决你的问题,请参考以下文章

docker(iptables)目标地址转换,运行中的容器映射端口

如何在没有端口映射的情况下将 docker 容器的 ip 和端口暴露给外部 docker 主机?

docker 容器修改端口

Docker端口映射与进入容器内部

Docker-端口映射

一个docker容器,在宿主机上有几个进程