精华内容
下载资源
问答
  • 首先要明白的是:数据从网卡发出去的条件是什么? 是要知道往那张网卡上发!意思就是要知道目标网卡的mac地址。 当pc1向pc2发出ping时,数据走到ip层会加上带pc2的ip地址的ip头,走到链路层的时候,发现没有对应的...

    个人主页:http://guanzi.info


    首先要明白的是:数据从网卡发出去的条件是什么?

    是要知道往那张网卡上发!意思就是要知道目标网卡的mac地址。

    当pc1向pc2发出ping时,数据走到ip层会加上带pc2的ip地址的ip头,走到链路层的时候,发现没有对应的mac地址,这时会arp广播吗?

    会的话,那么通过一根线相连的pc2一定会收到广播包,然后单播回去自己的mac地址,那pc1就顺利得到pc2的mac地址并加上含mac的帧头发出去了。一切都很顺利的样子。

    但是事实是pc1发现目的ip不是和自己属于同一个网段,果断放弃广播,所以是不会产生arp广播包的!!然后如果pc1没有设置默认网关,此时电脑已经放弃并返回目标不可达。如果此时有默认网关,再分情况。如果pc1要把数据包给默认网关,首先它得知道默认网关的mac地址吧,如果这个默认网关的ip和pc1的ip处于同一个网段,那pc1就开始arp广播,然后默认网关收到并返回mac地址,pc1果断更新自己的mac表,并在刚才的数据包上加个默认网关的mac地址头,然后发出去。

    如果配置的默认网关是不存在的,那对不起,网卡傻了,它又不能发了,于是返回超时。

    如果默认网关存在也像刚才一样返回,那它收到数据包之后,解到ip头,发现是需要转发的,然后它又查询自己的mac表,发现有的话就打上mac的头,并从相应的端口发出去,如果没有,它也像主机一样进行重复操作。

    如果默认网关设成和主机一样会怎么样?

    我觉得不会怎么样,意思就是说这个默认网关是存在的,但是它就是我自己,这就相当于放弃了默认网关。对么?

    展开全文
  • 问题:两台不同网段的PC连到一台cisco2950(无三层设备),为什么不同网段的PC无法进行通信?PC不是要广播吗他们连到同一台交换机,另一台PC应该收到了ARP广播啊? 掌握cmd下的两个命令arp和route你就会明白,下面...
    问题:两台不同网段的PC连到一台cisco2950(无三层设备),为什么不同网段的PC无法进行通信?PC不是要广播吗他们连到同一台交换机,另一台PC应该收到了ARP广播啊?<?xml:namespace prefix = o />

     

    掌握cmd下的两个命令arproute你就会明白,下面解释一下:
    首先,第一题中明确告诉你无三层设备,也就是说你连的网络中不会有网关的存在,即使你的PC设了一个网关,但是这个网关也是无效的,同意这点吗?画个图来 说:PC1--交换机--PC2PC1假设为192.168.1.1PC2192.168.2.1,掩码默认。那么你在发PING请求时,应该先了 解下发出的过程。
    PC
    中有个ARP表,要知道PC上的数据到二层进行封装后是要加上目的MAC的(具体请看TCP/IP协议,封装过程中加的各种报文头),然后根据目的 MAC地址转发的,也就是说你的数据要想从网卡出去,就必须知道对方的MAC地址,同样自己的PC也有个MAC地址,MAC地址和IP地址一样,都是唯一 的标识你身份的东西(IP私网地址例外,但在某个私网中它的地址也是唯一的,如果故意设成多台PCIP地址一样,那会提示你有IP冲突,当然这时候也会 有新的问题,比如问你:此时是否所有的配成相同IP地址的主机都可以正常收发数据)。
       
    讲了点题外话,但也可以思考下:),接着回来看这个问题,那么怎么知道对方的MAC?答案是ARP广播。首先PC1不知道PC2MAC地址,那么肯定会 ARP广播,假设PC1设了网关192.168.3.1。在CMD下用ARP -a命令查看本机ARP表,应该是什么都没有(如果之前PC是清空了ARP表开始做这个实验)。ARP表项格式如下:
      Internet Address      Physical Address      Type
      192.168.216.100       00-05-45-30<?xml:namespace prefix = st1 />-1f-58     dynamic
    不难看出,这个表明确指出了IP地址及与其对应的MAC地址。比如现在是PING 192.168.216.100的话,那么查找ARP表项时就知道了其MAC地址为00-0e-45-30-1f-58。那么接下来就可以通过查看主机路 由表把ICMP报文从哪个接口(这里为PC设置的IP地址所在网卡)转发出了。
       
    PING时,首先要知道对方MAC,必然会来查找ARP表,如果有对方的MAC地址,就会在封装报文时在目的MAC中加上从ARP表中知道的这个 MAC。如果不知道就会发ARP广播,好,这个实验关键的问题在这里。发ARP广播时,也要知道是从哪个接口(PC上就是网卡了)出去,那么这时必须知道 主机路由表的情况了,主机路由表可以在CMD下用route print命令显示出来,类似于下:
    ===========================================================================
    Active Routes:
    Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0      192.168.3.1     192.168.1.1       30
            127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
          192.168.1.0    255.255.255.0      192.168.1.1     192.168.1.1       30
          192.168.1.1  255.255.255.255        127.0.0.1       127.0.0.1       30
        192.168.1.255  255.255.255.255      192.168.1.1     192.168.1.1       30
            224.0.0.0        240.0.0.0      192.168.1.1     192.168.1.1       30
      255.255.255.255  255.255.255.255      192.168.1.1     192.168.1.1       1
    Default Gateway:       192.168.3.1
    ===========================================================================
    Persistent Routes:
      None
    这是PC1的主机路由表,默认网关为192.168.3.1,路由表中的第一项全0的表示默认路由,即只要PC发出的数据包在路由表中找不到匹配的全部都 从这个默认路由所在接口转发到默认网关。可以看到在这条默认路由的interface中明确指出是192.168.1.1,即192.168.1.1所在 网卡转发到默认网关。那么要转发到默认网关,我就得知道默认网关的MAC地址,所以这时候又去查ARP表,一看没有网关的MAC,所以发ARP广播(从网 卡发出去),结果可想而知,这个网关不存在,肯定得不到网关对应的MAC地址。网关都不存在,那么数据转发给谁也就不知道了,所以所有的数据都在本地终 结,不向外发送。自然ICMP包是不会被发送的。

      从上面可以看出,其实数据在发送时,应该是先查找路由表的,为了更好地理解,把ARP放在了前头,其实数据发送一到IP这层就开始看路由表,找出指定 的转发接口。最后到二层成帧后要知道MAC地址,就要去查找ARP表了。这个实验就是先看路由表,因为不同网段所以是从遵循默认路由,转发到默认网关。但 是要转发到网关,也必须知道网关MAC地址,但此实验中网关显然是不存在,那MAC地址也不可能知道,所以ARP广播数据(查找PC2MAC时发的 ARP广播)根本没处转发,此情况下数据在本地终结不对外发送了。也就是说这个ARP广播根本没从你网卡这个门中走出去。
      但是有一个ARP广播是出去的,就是查找网关的MAC时这个广播,即192.168.3.1这个IP所对应的MAC。只要你一直在PING,那么这个ARP广播就会一直从网卡中发送出去。
      如果有条件可以试一下,两台PC连一台二层交换机,然后用个抓包工具抓取ARP包,我是用Ethereal,非常不错的软件。你可以发现是只有查找网关MACARP广播包(即ARP请求包)从你网卡出去,其它的ARP包都没有从这个网卡进出。
      上面这个实验可以把默认网关去掉,再PING时是另一种结果,这个结果提示是目的主机不可达,如下:
    C:\Documents and Settings\Administrator>ping 192.168.2.1 -t

    Pinging 192.168.2.1 with 32 bytes of data:

    Destination host unreachable.
    Destination host unreachable.
    为什么不是原来的Request timed out,因为这时查找路由表时已经没有默认路由这项了,即路由表中不存在此数据转发的任何符合的条件存在,所以什么都不用干,直接说明要找的目的主机我没 法找,我肯定是到达不了这台主机的,给出了目的主机不可达的提示。而设置了网关就不一样,至少机器知道是有个出口的,即知道东西是可以从我这里出去的,至 少有那么条路存在。假设现在网关存在了,比如换了个三层交换机,配上了实验中的网关地址。这时候ARP广播包肯定是可以出去的。
    最后,综合上面所说的,按步骤来说这个ICMP报文下来后,查找路由表,查出是从默认网关出去,那么得先知道网关MAC,所以发查找网关对应MACARP广播,因为得不到这个MAC,所以数据一直就是转发不出。这个问题其实到查找网关MAC这里就已经基本打住了。

    转载于:https://blog.51cto.com/cwfsxlove/50387

    展开全文
  • 同一交换机不同网段的主机为什么不能通信?想不通!!大伙发表下意见。没有创建VLAN,把PC的IP分别设置成不同网段的IP,例如PC 1:192.168.1.1 ,PC 2:192.168.2.1,PC 3:192.168.3.1他们之间为什么在同一网段下...

    同一交换机不同网段的主机为什么不能通信?想不通!!大伙发表下意见。

    没有创建VLAN,把PC的IP分别设置成不同网段的IP,
    例如PC 1:192.168.1.1 ,PC 2:192.168.2.1  ,PC 3:192.168.3.1

    他们之间为什么在同一网段下可以通信,不同网段下就不能通信呢?

     

    chk0512 发表于 2008-4-8 19:47

    相互通信是要有前提了,必须是处于同一广播域的主机才能通信,不同网段的主机都不再同一广播域,发送的数据包都不能广播得不到目标主机的MAC就不能通信了~

     

    czljim1 发表于 2008-4-8 19:52

    不同网断的 他会查找路由表 的 你的路由表里面找不到网关 所以投不出去
    三层寻路一定要路由把

     

    一棵菠菜 发表于 2008-4-8 20:06

    你很有意思  不是同一网段的怎么通信?为什么会有路由这个东西   我想你可能还没搞清楚饿。。。。 你那交换只工作在2层   IP属于网络层  怎么能通信呢

    [[i] 本帖最后由 一棵菠菜 于 2008-4-8 20:19 编辑 [/i]]

     

    fogxugang 发表于 2008-4-8 20:24

    我知道路由是实现网络间的通信的,但我的意思是说在没有路由的情况下,他们不能通信的原理是什么?

     

    czljim1 发表于 2008-4-8 20:28

    因为 他不知道怎么走
    数据报不知道 通过什么样的路径 达到另外一个主机
    就比如 你要去一个地方但是没有地图 你现在站的地方没有人可以问路
    不知道路你怎么到那个地方啊。。。。。。。

     

    junrenwxd 发表于 2008-4-10 17:39

    就是不在一个网段!你把子网弄成255.255.0.0指定全通
    如果是255.255.255.0那指定不同的

     

    menghu 发表于 2008-4-12 13:09

    交换机是一个2层的设备,它没有路由的功能,它是根据MAC地址转发数据的!多层交换机和路由器才具有不通网段路由的功能!他们查看路由表转发数据!

     

    benandbo 发表于 2008-4-12 17:06

    选一个支持三层或四层的交换就行了

     

    qujie1030 发表于 2008-4-12 17:08

    如果没有路由器直接把PC插上去并且不要为PC配置IP地址,那么交换机的端口在默认情况下是属于同一网段的。

     

    yangybcy 发表于 2008-4-15 10:44

    PC 1:192.168.1.1 ,PC 2:192.168.2.1  ,PC 3:192.168.3.1  如果他们的掩码都是255.255.255.0的话  那么这3台机器所处的广播域不一样

    你这儿没有使用路由。

    所以不能通信!~

    说白了 就是交换机不知道怎样转发你的数据包

     

    inzaghi68 发表于 2008-4-15 11:42

    再没有路由条件下
    把3个ip的子网掩码都设成是255.255.0.0  试一试

     

    yaohui533 发表于 2008-4-16 08:14

    不在同一网段是不能通信..你要问这个是为什么的话你看一下TCP/IP协议,,,

     

    带茧的耳朵 发表于 2008-4-16 09:26

    回复 #17 inzaghi68 的帖子

    这个方法有点不太理解  掩码就算都是255.255.0.0,可毕竟实际地址并不处于同一网段,难道这样指定掩码意思就是使这三个地址变为192.168.0.0这样一个网段吗?不知我的理解正确吗

     

    maroc_gw 发表于 2008-4-16 09:52

    如果子网掩码都是255.255.255.0,在二层交换机看来这是三个不同广播域,它们之间既没有路由,也没有ARP代理,当然不会通迅.
    如果子网掩码是255.255.0.0,那就可以通讯了

     

    czdazaiyi 发表于 2009-3-15 11:05

    楼主可以互相ping通的

    czdazaiyi 发表于 2009-3-15 11:15

     

    如果   pc1 192.168.1.2/24 网关192.168.1.1
              pc2 192.168.2.2/24 网关192.168.2.1
    pc1 ping pc2,pc1先查看自己的路由表,走      0.0.0.0    0.0.0.0   192.168.1.1    这条路由,它直接找网关,但找不到网关,所以ping 不通。

    如果 两台机没网关,那更ping不通,因为查不到匹配的路由表,呵呵

    但如果   pc1 192.168.1.2/24 网关192.168.1.2
              pc2 192.168.2.2/24 网关192.168.2.2
    pc1 ping pc2就能ping通了,它直接广播出去,交换机在这里只关心mac,它才不会管pc1跟pc2是不是同网段,
    所以就能通了

    以上绝对是我试验过,因为这问题也困惑过我

     

    momoko 发表于 2009-8-25 15:56

    呵呵。能不能ping通,问题不是出在有没有路由器上的。不在同一网段的两台主机可 以ping通的!一种方法是上楼说的。还有一种比如这样设置:pc1      192.168.1.10/24 网关 192.168.2.10                 pc2        192.168.2.10/24   网关   192.168.1.10     就是说把两台主机主机的ip和网关交叉指向就可以了。能不能ping通。问题在主机上。想想当主机都无法封装数据时候。它怎么将其发出去呢。当然两 台主机之间什么都不连的时候。当然就不能ping通了。呵呵!

     

    momoko 发表于 2009-8-25 16:03

    这里还要补充一下:有人会说。你主机封装数据包。交换机又不知道。呵呵。三层协议交换机当然看不懂了。正是因为看不懂。所以这些三层协议对交换机来 说才是透明的呀。不过交换机可以看懂mac地址呀。只要能看懂这个mac地址不就行了吗?毕竟两台主机还都连在同一个交换机上的呀!呵呵!这样交换机根据 mac表这个依据完全可以把数据交给另外一台主机了。

     

    boris.sang 发表于 2009-8-25 21:05

    。。。。你根据我的设置,就是可以通信的
    pc1:ip地址192.168.1.1 255.255.255.0 网关地址192.168.1.1
    pc2:ip地址192.168.2.1 255.255.255.0 网关地址192.168.2.1
    pc3:ip地址192.168.3.1 255.255.255.0 网关地址192.168.3.1
    这样三台设备就可以通信了
    问题的关键是不在同一网段的设备间通信,需要向网关发送请求,如果没有设置网关,设备无法发送arp请求
    把arp协议原理弄清楚就行了

     


    转载于:https://blog.51cto.com/4269949/1605395

    展开全文
  • 家都知道,如果一交换机连接的主机在同一网段,则各主机可以互相通信,可为什么连接不同网段的主机就ping不通了呢? 我想很多人都有这样的想法,交换机不是基于帧的源MAC地址进行学习,目标MAC地址进行转发吗,...

     家都知道,如果一交换机连接的主机在同一网段,则各主机可以互相通信,可为什么连接不同网段的主机就ping不通了呢?

         我想很多人都有这样的想法,交换机不是基于帧的源MAC地址进行学习,目标MAC地址进行转发吗,也就是说
    
    当第一次通信时(即交换机中还没有MAC地址表),交换机会广播ARP请求来获得目标地址的MAC地址,当目标主机一看,这是在找自己,会将自己MAC地址发给源主机,这样的话不就可以通信了吗?可为什么ping不同呢?
    

    其实,如果通信中的目标主机如果和本机在同一个网段,则本机向交换机发出的ARP广播包中请求的是目标主机的MAC地址。如果通信的目标主机和本机不在同一个网段,则本机向交换机发出的ARP广播包中请求的是网关的MAC地址。显然,二层交换机只没有网关的,这时网卡会直接告知系统:“Destinationhost unreachable.”,将通信放弃。

    以上只是个人观点,难免有错。如果有错,请广大博友指正。

    转载于:https://blog.51cto.com/jameshpf/1147478

    展开全文
  • 通过ipconfig查询了一下两台电脑,网段的确不同,但还是有些不解:既然都在同一个交换机中(将问题简化一下),这台交换机上的机器都可以互相通信嘛,为什么还有考虑网段什么的?,然后开始查资料: 1.我们先要明确...
  • 为什么局域网网段不同不能通信?

    千次阅读 多人点赞 2019-05-16 17:52:19
    通过ipconfig查询了一下两台电脑,网段的确不同,但还是有些不解:既然都在同一个交换机中(将问题简化一下),这台交换机上的机器都可以互相通信嘛,为什么还有考虑网段什么的?,然后开始查资料: 1.我们先要明确...
  • 同一交换机不同网段的主机为什么不能通信?想不通!!大伙发表下意见。 没有创建VLAN,把PC的IP分别设置成不同网段的IP, 例如PC 1:192.168.1.1 ,PC 2:192.168.2.1 ,PC 3:192.168.3.1 他们之间为什么在...
  • 我们曾多次提到交换机的配置,有部分朋友反映有点深了,有些内容不懂,今天我们就从基础到深入来了解网络间如何才能互通,如何才能不通,以案例的方式来详细讲解,一文了解清楚vlan的使用与配置,方便后面应用于项目...
  • 1.有两台主机 A:192.168.1.3,子网掩码:255.255.255.0 默认网关:192.168.1.1(windows实体机)...ps:这是同一个小区,不同楼之间的两台电脑 2.ping的返回:无法访问目标主机 3.这两台主机不是同一网段吗?
  • 局域网访问隔离 1. 在如上图中,企业网络可以为根据使用者获得的授权不同,把LAN划分为不同的...2. 我们为不同的VLAN划分不通的网段,比如无线PC所属的VLAN1的网段为192.168.1.0/24,网关是192.168.1.1;相应的...
  • 同一局域网windows和linux互ping不通

    万次阅读 2016-09-26 19:39:07
    首先肯定是在同一网段,打算用Xshell连接呢,但是死活ping不通,禁用linux多余网卡也没用,后来无意中把window上以前虚拟机用的网卡禁用了,结果就能ping通了,虚拟机的网卡地址跟两台主机完全不同啊,不知道为什么...
  • 技术点详解——局域网访问隔离

    千次阅读 2017-03-10 13:11:36
    技术点详解——局域网访问隔离 局域网为什么需要访问隔离 ...1. 在如上图中,企业网络可以为根据使用者获得的授权不同,把LAN...2. 我们为不同的VLAN划分不通的网段,比如无线PC所属的VLAN1的网段为192.168.1
  • 局域网访问隔离

    千次阅读 2015-08-27 09:29:54
    局域网为什么需要访问隔离 1. 在如上图中,企业网络可以为根据使用者获得的授权不同,把LAN划分...2. 我们为不同的VLAN划分不通的网段,比如无线PC所属的VLAN1的网段为192.168.1.0/24,网关是192.168.1.1;相应的
  • 局域网为什么需要访问隔离 1. 在如上图中,企业网络可以为根据使用者获得的授权不同,把LAN划分...2. 我们为不同的VLAN划分不通的网段,比如无线PC所属的VLAN1的网段为192.168.1.0/24,网关是192.168.1.1;相应的
  • 问题起因:自己在本机搭建SVN服务端(已拥有客户端和插件端),服务器搭建完成后做一个把本地文件夹上传到SVN服务器空间的TEST, 1、本地创建好SVN服务端;...ping自己的另一台电脑却ping不通不同网段
  • 为什么要使用DHCP,每一台设备都是需要一个IP地址才能上网,人为的去分配IP肯定是行不通的,所以就需要利用DHCP去自动的分配IP、网关、DNS服务器等。 当然在一个地方可能存在多个DHCP服务器,负责不同网段的IP地址
  • zabbix-proxy分布式监控

    2020-11-26 21:08:01
    为什么需要2块网卡? 不同段网络不通 zabbix-agent,如果都和server网段相同,非常危险 如果数据全都是server处理,服务器压力太大 添加网卡 ip addr 网卡识别出来了,但是没有ip cd /etc/sysconfig/network-...
  • 这是为什么呢?究竟该怎么设置呢?原因是这样的,现在的计算机系统,出于安全考虑,在默认情况下是不允许外部主机对其进行ping测试的。但在一个安全的局域网环境中,Ping测试又是管理员进行网络测试所必须的。如何...
  • 多媒体教室

    2013-06-14 08:10:31
    1. 使网关的两块网卡分别对应不同网段,并将各网段的学生机设置网关相应网段的网关网卡IP地址。 2. 在网络属性服务中添加RIP服务。添加后用Route Print命令应能够打印出正确的路由信息了。 3. 在网关机器上运行...

空空如也

空空如也

1 2
收藏数 23
精华内容 9
关键字:

不同网段为什么不通