当前位置: 首页 > 知识库问答 >
问题:

仅C类外部IP没有到主机的路由

章稳
2023-03-14

在compute节点上启动的VM实例可以访问除C类IP之外的所有外部internet站点。控制器和计算节点已经根据openstack liberty指南在Ubuntu上成功安装。

 [root@vm3 ~]# wget http://www.163.com
    Resolving www.163.com... 60.207.246.98, 124.202.166.57
    Connecting to www.163.com|60.207.246.98|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: unspecified [text/html]
    Saving to: “index.html.1”

VM的接口有:

[root@vm3~]#ifconfig eth1链路Encap:Ethernet HWaddr FA:16:3E:57:1B:57
inet Addr:192.168.0.215 BCAST:255.255.255 MASK:192.0.0.0inet6 Addr:FE80::F816:3EFF:FE57:1B57/64作用域:链路运行多播MTU:1450度量:1 RX数据包:46213错误:0丢弃:0溢出:0帧:0 TX数据包:42118错误:0丢弃:0溢出:0载波:0冲突:0 TX队列n:1000 RX字节:13492902(12.8MiB)TX字节:

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:58630 errors:0 dropped:0 overruns:0 frame:0
          TX packets:58630 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:44931488 (42.8 MiB)  TX bytes:44931488 (42.8 MiB)

virbr0    Link encap:Ethernet  HWaddr 52:54:00:D2:F5:28  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

VM上的路由有:

 [root@vm3 ~]# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    169.254.169.254 192.168.0.200   255.255.255.255 UGH   0      0        0 eth1
    192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
    192.0.0.0       0.0.0.0         192.0.0.0       U     1      0        0 eth1
    0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth1

我创建了启动VM的公共网络。公用网络为192.168.0.0/24,专用网络为10.0.0.0/24。控制器:192.168.0.12/10.0.0.11计算机:192.168.0.10/10.0.0.31

如果显式添加202.108.33.60的路由,wget可以工作:

路由添加202.108.33.60gw 192.168.0.1

    [root@vm3 ~]# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    202.108.33.60   192.168.0.1     255.255.255.255 UGH   0      0        0 eth1
    169.254.169.254 192.168.0.200   255.255.255.255 UGH   0      0        0 eth1
    192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
    192.0.0.0       0.0.0.0         192.0.0.0       U     1      0        0 eth1
    0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth1

有没有人知道原因或提供一些帮助如何调试这个问题?多谢!

共有1个答案

龙涵蓄
2023-03-14

经过几天的分析和挖掘,最终我发现原因是路由条目“192.0.0.0 0.0.0 192.0.0.0U 1 0 0 eth1”将所有C级IP过滤为LAN(邻居网络),偶尔www.sina.com.cn也是这样的主机。我改成如下后,就可以访问www.sina.com.cn了。

192.0.0.0 0.0.0.0 255.0.0.0 U 1 0 0 eth1

 类似资料:
  • 当我尝试从我的容器内连接到另一个容器的端口时,我不成功并得到, 从docker主持人那里我成功了, 如果我检查iptables,我可以看到问题, 所以我添加了以下内容,一切都很好, 我错过什么了吗? 谢谢

  • 我已经部署了一个运行在OpenShift Origin上的grpc服务。这是由OpenShift服务支持的。该服务通过OpenShift路由公开。我正在尝试通过一个服务和路线将集装箱港口(50051)映射到8080港的外部世界,从而使这个吊舱可用。 服务试图公开的映像在其Dockerfile中具有: 路线如下: 服务端口:8080/TCP 目标端口:50051 在DeploymentConfig中

  • 我正在将minikube作为docker映像运行。我试图使用Nodeport将我的服务公开给外部世界。 这是我的yaml文件。 搜索了大量关于nodePort的信息,我们需要节点ip才能访问该服务。我可以使用minikube service docker hello world svc访问我的服务——url,它为我提供了访问服务的urlhttp://127.0.0.1:52526但此处的端口号与n

  • 问题内容: 我正在尝试开发客户端服务器TCP / IP应用程序。我的PC上运行着一台服务器,移动设备上运行着客户端应用程序。它们都在同一个Wi- Fi网络中,但是我无法在它们之间建立连接。在调试客户端Android应用时,显示以下错误: 我正在使用的代码: 我究竟做错了什么? 问题答案: no route错误表示尝试进行TCP连接时,连接失败,因为基础协议软件找不到到指定目标节点的网络节点到网络节

  • 有人知道怎么解决这个问题吗?

  • 我尝试使用 JMeter 运行分布式测试,我有 2 个 EC2 实例 主公共 IP: 54.xxx.xx.xx 从属公共 IP: 204.xxx.xxx.xxx 我已经打开了配置中使用的所有必要端口。 我可以从另一个 EC2 对每个 EC2 执行 ping 操作,并且 ping 成功。 但当我尝试启动测试时,服务器失败并返回[No route to host(host unreachable)]。