ubuntu奇怪的网络问题? port 80: No route to host

问题描述:

1. 安装过kubernetes环境,使用过80等端口的hostPort

2. 升级系统后出现问题,机器有多张网卡,k8s希望在局域网使用,由于局域网没有网关,网络插件flannel将网络绑定到了外网的网卡;

3. 原有k8s的服务使用containerPot+hostPort形式的服务均无法访问

4. 卸载kubernetes,使用kubeadm reset,之后直接使用docker启动服务,使用相同的端口,服务无法访问,通过curl访问报错no route to host。

5. 更换之前从未使用过的端口,可正常访问,此时iptables已经清空规则,使用80等端口念旧报错no route to host,排除路由问题

6. 考虑可能是之前的转发工具造成此问题,卸载conntrack等k8s组件

7. 问题依旧,现更换了所有的端口为之前未使用过的端口,服务正常使用。

8. 有人可解释下原因何在?重装系统之类的解决方案就不要提了!

题主请对系统进行如下检查:

  1. 网络是否能与互联网通信
  2. 使用kubeadm reset命令后,请将多余的目录以及文件手动删除
  3. 使用tcpdump或者nc工具对80端口进行抓包分析。
  4. 先将Ubuntu的防火墙禁用,以此减少排错干扰。
  5. 在Ubuntu上安装nginx服务,对此进行访问,然后查看报错日志信息,根据报错日志定位问题关键。