|
作者: dog1018 [dog1018] 论坛用户 | 登录 |
有两台电脑,一个IP是192.168.100.1另一台是172.16.1.1,两台电脑用一个交换机相连,两不IP不在同一个地址段,在网络层广播是被隔离的,可是在数据通信时网络层是被链路层封装起来的,不能够隔离广播,那么问题就出来了,既然链路层是不能够隔离广播,那么为什么两台机器还是不能够进行互相通信呢?????????!!!!!!!!高手请回答呀!!! [此贴被 真命天狗(dog1018) 在 03月22日12时26分 编辑过] |
地主 发表时间: 05-03-21 21:36 |
回复: tuzi [tuzi] 版主 | 登录 |
首先PC根据路由表先判断对方是不是属于对方和自己属于同一网络 结果不是 这时候就需要找网关 结果又没有网关 操作系统又没有起用代理ARP 所以 ARP查询根本就发不出去 IP协议栈向上层报告 HOST unreachalbe 所以不能通信 如果起用了代理ARP 就如前面一个帖子 你说难倒CCIE的题目 起用了代理ARP 又符合那个帖子的情形 2 和5所说的情况(MS 操作系统) 就可以发出ARP查询 交换机广播一下 目的PC可以收到ARP查询 但是目的PC不会应答MAC 因为目的PC的路由表告诉目的PC ARP查询的源IP不是同一个网络 所以不能通信 如果你在源PC中手动绑定了目的PC的MAC地址 源可以发出数据包 目的也可以收到 目的PC也不会应答 理由和上面说的一样 proxy arp是个比较奇怪的东西 rfc925里面也没有详细的提到这样的功能 大概是windows的开发人员自己设置的东西吧 为什么不去详细找找操作系统实现ARP代理的技术文章呢? |
B1层 发表时间: 05-03-22 13:02 |
回复: ahk [ahk] 论坛用户 | 登录 |
楼上的,一直佩服你的技术.顶 |
B2层 发表时间: 05-03-22 15:45 |
回复: dog1018 [dog1018] 论坛用户 | 登录 |
错错错错错!!!!!!!! 我们知道,在数据链路层有两个子层,MAC(访问控制)和LLC(逻辑链路控制)这两个子层,LLC包括LLC1(广播形式)于LLC2(点对点)=HDLC(高级数据链路控制),LLC1里还包括SAP(服务访问点)和SNAP(子网访问点),SAP是对应上层IP的网络做一个链路分割,SNAP是对应上层采用的协议。这回知道了吧!!!这个题的关键是在于链路层的子层,而不是在网络层!!!!!!! |
B3层 发表时间: 05-03-25 21:42 |
回复: tuzi [tuzi] 版主 | 登录 |
楼上的 说的不错 但是 不是回答这个问题的答案呀 感觉你的思维有些反常 无论是广播还是单播 是交换机和路由表共同作用的结果 和你那好无关系 无论LLC采取什么样的服务 是SNP 还是SNAP也好 总之2层交换机是不管这些东西的 它只根据MAC转发 就这样而已 目的能不能应答 只是根据本地路由表 关于上层什么协议 能否应答 也是路由表的事 [此贴被 带脚镣跳舞(tuzi) 在 03月27日00时33分 编辑过] |
B4层 发表时间: 05-03-27 00:30 |
回复: dog1018 [dog1018] 论坛用户 | 登录 |
能不能PING通是由ARP决定的,和网络层有什么关系呢。这两机器虽然起了网络层,但是我说的数据是在链路层,并没有和网络层有关系呀!!!! |
B5层 发表时间: 05-03-28 12:28 |
回复: tuzi [tuzi] 版主 | 登录 |
当然和网络层有关系 首先ARP就是网络层的4个协议之一 其二 没有ARP应答报文 如何得到目的的MAC 2层交换机难道能给出目的MAC吗? 交换机只负责multicast 目的不响应 你又如何得到MAC 路由表又会限制数据出去的逻辑拓扑 这个问题不必讨论了 建议去补充一些基础知识 [此贴被 带脚镣跳舞(tuzi) 在 04月01日21时44分 编辑过] |
B6层 发表时间: 05-04-01 21:43 |
回复: afan271314 [afan271314] 论坛用户 | 登录 |
虽然不在同一个网段 但他们在物理上是在一个局域网里 局域网通信用不到第三层 所以只要在主机里加一条ARP记录就能通信了 |
B7层 发表时间: 05-04-03 19:32 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号