其实以前学计算机网络的时候就区分过,但总也记不住,并且之前宿舍用的时候印象不深,只记得功能类似。对此熟知的同学可以绕道了,仅作科普。
今天帮Y弄上网的事,现状是她和一起的女生同要用一根联通的总网线,但是前面的人把路由器拿走了,然后要实现共享上网的问题。今天我想当然的买了个交换机,因为在宿舍就用交换机嘛,让她买了个交换机以为直接就能用了,结果问题出现了,上不了网。
第一反应是电脑网络的设置问题(后来也确实发现有问题,但已经不重要了),结果解决了之后插在总线上可以上网,但是一旦接到交换机分出来的线的话,两个人就只能有一个能上网。我顿时感觉很奇怪。其实以前就对宿舍用校园网时不能用路由比较疑惑,这下就彻底激发了我的好奇心~哎,其实是基础知识掌握不扎实啊
大家都知道网络数据的OSI那几层划分,一般的交换机属于数据链路层。其实是从集线器,网桥这种东西发展而来的,直观来讲,可以把它看成把一根网线扩展成n根网线的东西,这就是老校区宿舍的一根网线可以通过交换机分成几根供大家上网的原因。但是,了解它的真正本质还要看它的核心,一般的交换机保存着MAC地址和端口的映射表,MAC地址可以理解成每个pc的唯一物理id,是厂家写死在网卡上的。一个交换机在建立了这张表后,对于传来的一个数据,通过该表直接通过MAC信息发送到对应的电脑上。
而路由器呢,它高级就高级在具有一个代理功能,它可以具有一个网络上的ip地址,同时将连到它的n条线组合成一个局域网,并把这个局域网的每个电脑都分配一个地址(C类地址,也就是 常见的192.168.X.X)而外网的信息如何传入到局域网呢?它的内部有一个路由机制,就是一个外网ip地址和局域网ip的对应关系,外网的一条信息发给路由器,这条信息一般不是局域网所有个体需要的,而是某个个体,然后路由器将ip部分重新包装,根据发送时候记录的信息,发给特定的个体,这是用的地址就是局域网ip,因此我们说路由器是网络层的设备。
有了这些理论知识,就很容易解释开头的两个问题。两个人公用一个上网账号,账号即指运营商分配的ip,没有就不给你提供互联网服务,一旦某个人先用交换机登录,即可以得到运营商分的一个ip,然后交换机记录的是登录成功的MAC信息,而后另外一个人使用同一账号登录无法获得ip,交换机就不会记录和后来机子的任何MAC信息,因为根本没有得到允许的信息交互,当然无法上网。
而在宿舍,每个人都有一个账号,并且重要的是,学校为了避免账号被滥用的可能,将每个账号和机子MAC绑定了。每个人都有账号,都可以与校园网服务器进行交互,因此交换机就有了你的MAC记录。但是如果换成路由器,账号就和路由器的MAC绑定了,如果宿舍接了路由器,发过来的信息到了路由器就停止了,宿舍的任何电脑被分配的C类ip都不会建立在路由器的信息表中,路由器就成了终端,不会执行代理功能了。可以设想的是,如果不和MAC绑定,运用一个账号就可以划分为一个子网,之后可以重复的树状划分,一个账号就可能被n个人用,这会带来沉重的网络负担,校园网服务器肯定不堪重负的。
最后举个简单的例子来说明,把ip地址比作每个家庭的邮箱地址,信件相当于网络数据,网线相当于送信的公路。这样的话,交换机相当于立交桥之类的道路设施,而路由器则相当于各级的邮局,具备识别邮箱地址并转发至下一级邮局的的功能。所以第一个问题就相当于家庭没有邮箱,再怎么向他家修路也没有用了。