一个路由器可以可以拥有多个ip地址吗?
刘亚茹
2022-04-19 19:42:15
共 1 个回答
沈为民
2022-04-24 11:15:03
学习过IP中的小友都知道,IP的作用就是在网络通信中标识唯一一台主机。
那你有想过吗,为啥你购买了一个账号,运行商给你分配一个IP,通过路由器就可以供多人(多台电脑)同时使用?
这个时候不就和前面矛盾了吗?
如果做了网工多年,你对交换机、路由器、设备通信流转和NAT等基础网络知识点还是不太明白,理解的也比较粗浅,欢迎私聊老杨,咨询老杨,学习体系化的基础知识。
想让两台电脑之间通信,最简单的方式就是用一根网线连接双方即可。进行如下的配置:
(1)如果两台电脑之间通过网线连接是可以直接通信的,但是需要提前设置好IP地址以及网络掩码
(2)并且IP地址需要控制在同一网段内,例如:一台为192.168.1.1另一台为192.168.1.2则可以进行通信
(3)使用ping命令测试是否连通,然后就可以基于windows网路共享等实现一些基础网络操作
一般一台电脑只有一个网线接口,如果我想让三台电脑互相通信,咋整?单独通过网线就实现不了,咱们这个时候可以使用集线器(hub)。
如上,三台或者多台设备通过集线器连接起来,就是大家把网口的另一端都连接在集线器上即可。
(1)当有多态电脑需要组成一个网时,那么可以通过集线器(Hub)将其链接在一起,配置同一网段IP。
(2)一般情况下集线器的接口较少。
(3)集线器有个缺点,它以广播的方式进行发送任何数据,即如果集线器接收到来自A电脑的数据本来是想转发给B电脑,如果此时它还连接着另外两台电脑C、D,那么它会把这个数据给每个电脑都发送一份,因此会导致网络拥堵。
(4)使用ping命令测试是否连通,然后就可以基于windows网路共享等实现一些基础网络操作
通过交换机(switch)连接多台设备,目前交换机已经基本替代了集线器。
(1)克服了集线器以广播发送数据的缺点,当需要广播的时候发送广播,当需要单播的时候又能够以单播的方式进行发送。
初始化添加网路时,会广播形式发送arp获取每个设备的mac地址,这样再跟某个设备通信时会使用IP+mac的形式,非请求mac不会发送数据。
(2)交换机目前已经替代了之前的集线器。企业中就是用交换机来完成多态电脑设备的链接成网络的。
通过交换机,可以实现少量的电脑设备之间进行通信。
但是,如果是多台电脑,且不再同一个地方,同一个网段,如何进行通信,显然上面交换机已经不能满足需求。
这里,就要用到路由器router。路由器的核心就是链接多个不同网段的局域网成为一个大的局域网。
如下图,如果想让同一个路由器连接的设备之间进行通信,要咋实现?
比如:让路由器左边的局域网段的192.168.1.1(PC0)和路由器右边的局域网段192.168.2.1(PC3)进行通信。
这时候,底层数据是如何流转的?
(1)因为PC0和PC3不在同一个网段,所以PC0首先把数据发送给默认网关(路由器Router0)。
目的IP:192.168.2.1
目的mac:路由器左边的虚拟网卡的mac地址
注意:如果是首次联网通信的话,PC0是不知道路由器左边虚拟网卡的mac地址的,这个时候PC0就会先发送arp,得到其mac地址。
(2)这个时候,路由器根据目的IP网段解析,将数据发送给路由给右边的虚拟网卡(即192.168.2网段的网关)。
路由器网关再根据目的IP进行解析,将数据发送给PC3。注意这个时候目的mac变成了192.168.2.1的mac地址。
(3)在网络传输中IP地址不变,但是目的mac是不断变化的。
这就好比你寄个东西从北京到上海,目的IP是上海不变的,但是中间可能会先送到mac山东,在从山东送到南京mac,在从南京送到上海mac。
在网路链路中进行通信,实际底层数据流转如下:
(1)在PC0的浏览器中输入一个网址 http://www. baidu.com 时,需要将它先解析出IP地址来。
具体如何解析,去哪里解析,这个时候要看你电脑配置DNS服务器,所以PC0先将网址发送给对应的DNS服务器进行解析。
其实,在我们电脑C:\Windows\System32\drivers\etc目录下有个Hosts文件,其主要作用是定义IP地址和主机名的映射关系,是一个映射IP地址和主机名的规定。
当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,浏览器会立即打开对应网页,如果没有找到,则浏览器会将网址提交DNS服务器进行IP地址解析。
这也是提高快速打开网页的方法,所以可以将常见IP和网址映射写入到hosts文件里。
我这里使用的是联通的宽带,默认的DNS服务器地址和默认的网关地址一样。
当然这里,你也可以自定义DNS服务器地址,比如8.8.8.8是一个是Google提供的免费DNS服务器的IP地址,也可以配置多个DNS地址。
(2)当得到IP地址之后,浏览器以tcp的方式3次握手链接服务器,中间以上面路由的方式进行层层传递。当然,这里实际其实牵扯到路由路径的选择。
(3)以tcp的方式发送http协议的请求数据发送给服务器
(4)服务器tcp的方式回应http协议的应答数据给浏览器
假设,现在我从北京请求登录美国网站:
首先,我得在浏览器输入网址 https:// github.com 。
这个时候,通过DNS解析到了github对应的IP。
你思考一个问题:为什么我有了github的IP以后路由器就会自动把我的请求发送给“美国”对应的路由器与服务器?
以IPv4来说,NIC给全球每个国家,每个城市的分配得到的公网IP段是确定的,所以比如我访问github,使用ping命令,查看该网站的IP是13.229.188.59的归属地是新加坡。(可能因为github将全亚洲的所有请求都发送到了新加坡的github服务器处理,具体是根据亚洲的IP网段判断)
同理,路由器就可以根据每个国家,每个城市的的公网IP段将目的IP的请求,发送给对应国家与城市的路由器去处理,最终请求到达一个具体的设备。
所谓的NAT是指网络地址转换器:
(1)用宽带链接上网时,会把网线(光纤)-->调制解调制(简称猫)-->电脑等设备直接连接上网
(2)电脑会得到来自电信服务商的一个公网IP地址(切记只有公网IP地址才能上网)
(3)为了能够让多台设备都可以上网,需要将数据进行“分流”网线(光纤)-->调制解调制(简称猫)-->路由器-->电脑等设备
(4)此时路由器的一端有一个公网IP地址,剩下的几个端口(或无线)可以接入电脑等设备,并且路由器给它们分配私有IP(例如 192.168.1.2)。
(5)当一个电脑(192.168.1.2)上网时,先通过DNS协议解析出某个域名对应的IP,然后
推荐阅读: 如何用一个故事讲清路由器和交换机的区别?
整理:老杨丨8年资深 网络工程师 ,更多网工提升干货,请关注公众号:网络工程师俱乐部