在这一篇文章中http://blog.csdn.net/zhangdaisylove/article/details/46892917的案例,明确的说明两个不同网段的PC不能Ping的通,其实他给出的答案是片面的,忽略了有路由的功能。

如题,两台PC相连,假设PC1的IP为1.1.1.1,PC2的IP为2.2.2.2。

当PC1 Ping PC2时,会首先查看自己的APR缓存,看是否有2.2.2.2对应MAC地址。第一次显然没有,那么就需要发送ARP包来询问谁的IP地址为2.2.2.2

PC2收到来自PC1的ARP包之后,会回答说我就是2.2.2.2,将MAC地址发送个PC1.

如果按照这个思路,显然是可以Ping的通的。

但是,问题的根源就在这里了,ARP包是在什么情况的时候发送。

ARP协议是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题的。

也就是说当PC1想Ping PC2之前,要先看PC2是否与自己在同一个网段上,如果在一个网段上,可以直接广播ARP,如果不在,那么需要向网关发送ARP包,

网关查询自己的ARP缓存。也就说如果两台直连,不通网段是无法Ping通的。

好,那么下面再来看看这篇文章https://www.linuxidc.com/Linux/2017-08/146368.htm的这个图,下面解释了如何实现不同网段之间的电脑进行互Ping:

配置:

1、如图所示先配置所有的IP地址

2、针对不同的机器配置路由

  • Aubin-CentOS1

    route add default gw 10.0.1.1
  • CentOS-R1

    route add -net 10.0.3.0/24 gw 10.0.2.2
    route add -net 10.0.4.0/24 gw 10.0.2.2
    echo 1 > /proc/sys/net/ipv4/ip_forward #启用转发功能(可以理解为启用路由功能)
    iptables -F #关闭防火墙
  • CentOS-R2

    route add -net 10.0.1.0/24 gw 10.0.2.1
    route add -net 10.0.4.0/21 gw 10.0.3.1
    echo 1 > /proc/sys/net/ipv4/ip_forward
    iptables -F
  • CentOS-R3

    route add -net 10.0.2.0/24 gw 10.0.3.2
    route add -net 10.0.1.0/24 gw 10.0.3.2
    echo 1 > /proc/sys/net/ipv4/ip_forward
    iptables -F
  • Aubin-CentOS1

    route add default gw 10.0.4.1

以上就是全部配置,然后用CentOS1去测试,ping CentOS2的IP地址10.0.4.100。如果ping通则所有配置均没问题。如果没有通请参展以下几点做检查。

1、使用route -n查看路由是否生效。

2、cat /proc/sys/net/ipv4/ip_forward查看输出是否为1,如果为0说明没有开启转发功能。

检查echo 1 > /proc/sys/net/ipv4/ip_forward是否执行成功。

3、检查IP 与 掩码是否配置正确,因为有多个IP地址容易搞混,所以好好检查。

4、检查是是否关闭防火墙,执行iptables -F

5、如果在虚拟机环境下做实验,检查MAC地址是否冲突

两个不同网段的PC直连是否可以Ping通,肯定可以Ping的通(转)的更多相关文章

  1. android与PC直连的socket问题

    关键字:abdroid 模拟器 socket 突然有人说使用android的模拟器做socket服务器,PC做客户端,使用UDP通信的时候,android端无法收到数据包.反过来没问题,我觉得这怎么可 ...

  2. Juniper srx新增接口IP,使PC直连srx(转)

    转自:https://www.jianshu.com/p/bc27134bde3d Juniper srx新增接口IP,使PC直连srx 2018.11.19 14:24:15字数 424 概述 需求 ...

  3. linux环境中,两个不同网段的机器互通

    linux环境中,两个不同网段的机器互通   人评论3690人阅读2019-11-18 14:50:21   环境如下:   host1 单网卡 eth0 172.24.100.15/16   hos ...

  4. NAT 模式下有两个虚拟机 网段不一样,一台可上网,可ping通,一台上不了网且ping不通

    NAT 模式下有两个虚拟机 网段不一样,一台可上网,可ping通,一台上不了网且ping不通直接修改网段的话,会登录不上去,解决方法:设置>网络适配器>高级>生成mac地址重新登陆即 ...

  5. PC问题-可以PING通IP,PING名字不通,可以远程,但不能访问共享文件夹?

    问题现象:可以PING通IP,PING名字不通,可以远程,但不能访问共享文件夹? 问题原因:目标主机中NetLogon服务未启动. 问题处理:远程打开目标主机,“我的电脑-管理-服务-启动(改为自动) ...

  6. 路由表flags的U值引起的能ping通网关,ping不通其它网段的案例

    故障的: 正常的: 初步分析: 看路由表的flags ,之前故障时是U.现在正常的是UG查了下说明,应该是这个原因.U — 路由是活动的G — 路由指向网关

  7. 006一句话解决主机pc,Vmware虚拟机,开发板之间的ping问题

  8. 没有IP地址的主机怎样保持IP层联通

    在<两台不同网段的PC直连能否够相互ping通>一文中,我有点像在玩旁门左道,本文中.我继续走火入魔.两台机器,M1和M2,各自有一个网卡eth0,配置例如以下:M1的配置:eth0上不配 ...

  9. Vlan技术总结

    VLAN主要有两个作用: vlan可以有效的控制广播域的范围 vlan可以分组设备,增强局域网的安全性(业务隔离) vlan的范围: 一共有4096个vlan,vlan 1为默认vlan.但其中vla ...

随机推荐

  1. Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f070058 android-studio 3.0 from canary 5 to canary 6

    我升级android-studio到了3.0 canary 6打包编译安装出现如下错误: 07-11 13:00:39.523 8913-8913/dcpl.com.myapplication E/A ...

  2. leetcode 之Median of Two Sorted Arrays(五)

    找两个排好序的数组的中间值,实际上可以扩展为寻找第k大的数组值. 参考下面的思路,非常的清晰: 代码: double findMedianofTwoSortArrays(int A[], int B[ ...

  3. HDU 3342 Legal or Not(拓扑排序判断成环)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3342 题目大意:n个点,m条有向边,让你判断是否有环. 解题思路:裸题,用dfs版的拓扑排序直接套用即 ...

  4. 交通运输线(LCA)

    题目大意: 战后有很多城市被严重破坏,我们需要重建城市.然而,有些建设材料只能在某些地方产生.因此,我们必须通过城市交通,来运送这些材料的城市.由于大部分道路已经在战争期间完全遭到破坏,可能有两个城市 ...

  5. 1、量化投资—为什么选择Python?

    Python在量化领域的现状 就跟Java在web领域无可撼动的地位一样,Python也已经在金融量化投资领域占据了重要位置,从各个业务链条都能找到相应的框架实现. 在量化投资(证券和比特币)开源项目 ...

  6. MVC – 6.控制器 Action方法参数与返回值

    6.1 Controller接收浏览器数据 a.获取Get数据 : a1:获取路由url中配置好的制定参数: 如配置好的路由: 浏览器请求路径为: /User/Modify/1 ,MVC框架获取请求后 ...

  7. PyCharm中 ImportError: No module named tensorflow

    安装完 tensorflow 后在 PyCharm 中导入时显示找不到,可设置如下: PyCharm 中依次打开 File -> Settings -> Project:PycharmPr ...

  8. linux 大法

    实验楼 练习 小笔记 可以输出图形字符的命令banner 你可以先使用如下命令安装: $ sudo apt-get update $ sudo apt-get install sysvbanner 然 ...

  9. chrome浏览器使用HTML5预览图片

    chrome浏览器对HTML5支持的较好,使用HTML5的File相关的api,可以实现前台页面在选定图片后,不上传即可预览.代码如下: 1.前台代码,使用<input type="f ...

  10. Java 如何获取系统时间

    Java 如何获取系统时间 import java.text.SimpleDateFormat; import java.util.Date; public class Test { public s ...