随着单位办公群体的不断增加,网络办公尤其是即时通讯功能日益成为工作中不可或缺的一部分,为了实现单位办公群体的通讯需求,就需要在办公网中架设一台服务器,这样办公用户就可以通过访问即时通讯服务器实现公文以及相关信息的交流,但是在实现办公主机之间互相通信的过程中我们就遇到了问题,下面就介绍一下故障的处理方法,为了更好地解决问题,我们首先梳理下网络拓扑结构。
图1 网络拓扑结构示意图
如图1我们可以看到办公汇聚交换机连接BRAS(路由器)设备,然后通过各接入层交换机实现办公用户上网,上面我们了解完网络拓扑结构,接下来就开始着手处理问题。目前办公用户上网的方式是采用PPPOE拨号上网方式,那么既然这样我们的即时通讯服务器需要一个地址,即实现所有的办公网用户都可访问到这台服务器,我们决定在服务器上设置一个固定的IP地址即10.76.76.6,随后我们将这个地址设置在服务器上,本以为其他拨号上网的用户可以正常访问,但是在拨号上网的用户根本就Ping不通服务器地址。
针对这一问题,我们展开思考,为什么同一个DHCP地址池的地址不能互相访问呢?这就要从PPPoE拨号的原理说起,PPPoE即以太网上的 PPP(在以太网上的点到点协议),用户拨号成功后,会从BRAS上获得一个合法的地址,但是为了避免网关受到不法攻击,BRAS是不会告诉上网主机网关的,但是还需要必须设置网关,那只有使用自己的IP地址作为网关了。在用户从BRAS的DHCP池中取得IP地址的时候,地址池会分配一个32位的地址给上网主机,主机之所以获取到一个32位的地址这和PPPOE工作原理有关,即点到点,还有就是实现一台主机一个子网的要求。回过头来我们看到设置在服务器上的静态IP地址是10.76.76.6,子网掩码是21位的,网关是10.76.64.1,而PPPOE拨号上网用户获取到的IP地址和网关相同,而且子网掩码是32位的,如果要实现PPPOE拨号上网的PC机和服务器通讯,很显然两个主机不再用一个子网中,即不再同一个网段,这样就需要寻找网关,刚才我们介绍到BRAS是一台路由器,它不能转发广播报文,这就需要我们应用ARP代理功能,下面我们简要介绍一下ARP代理功能,路由器收到ARP 请求报文时,若发现查询的目的IP地址在不同子网,路由器会扮演代理ARP的角色代为回答,告诉查询者它所要做的MAC地址。ARP代理功能通常应用在主机没有配置默认网关网络中,既然我们知道服务器和拨号上网的用户不能通讯是因为这两个地址不在同一个子网中,需要开启路由器的ARP代理功能,接下来我们对BRAS设备进行配置:
//配置ARP的代理功能
上面我们通过命令打开了路由器的ARP代理功能,为了验证效果,我们使用PPPoE拨号上网的主机是可以正常Ping通即时通讯服务器的。其实代理ARP功能是当主机知道一个IP地址且它想知道该IP地址对应的MAC地址时,主机会以广播的形式发送ARP请求,但是如果两个地址不在同一个网段中,就需要路由器开启代理ARP。因为路由器默认是不转发广播报文的,所以当路由器收到ARP请求时,它将启动代理ARP服务,将发送广播ARP报文,这样才完成了两个不同子网设备的正常通讯。回想我们在处理故障的时候,并没有发现到故障现象的本质,这就需要我们认真的分析网络故障,究其原因然后通过现象看本质,只要找到了出现故障的本质,才能更好的想出对策处理问题,解决问题。所以说分析问题也是一种能力的体现,这种能力不是与生俱来的,而是在处理许多网络故障的过程中慢慢积累起来的,这就要求我们网络运维人员要多动脑筋,多思考问题,这样才能熟练掌握排除问题的能力,从而为提升网络服务质量提供坚强的技术支撑。