龙空技术网

路由器如何工作?作用是什么?最硬核科普!学会后可网工级组网

旋律果子 279

前言:

眼前朋友们对“ddns 负载均衡”可能比较珍视,咱们都想要了解一些“ddns 负载均衡”的相关内容。那么小编同时在网络上网罗了一些对于“ddns 负载均衡””的相关知识,希望大家能喜欢,姐妹们一起来了解一下吧!

【好玩的网络】系列面向普通人的网络科普视频。

本期知识点

路由器的作用是什么?

如何实现跨子网通信?

路由器的工作原理简介, route表。

好玩的网络第三期!不定期更新。视频传送门。

本系列视频/教程

路由器参数解读传送门。

嗨,大家好!我是你们的小伙伴果子。上一期视频,我们对IP地址,网段,子网有了一定的认识,我们知道,只要配置好IP地址和子网掩码,使两台主机的IP地址属于同一个网段,这两台主机就能通讯了。这一期,我们讲讲跨子网通讯和路由器。

1.引言

我们之前讲过交换机,交换机是一个数据转发设备,在OSI模型中的第二层,数据链路层工作,通过MAC地址和交换机端口号的对应关系来转发数据包,忘记的小伙伴可以看我的第1期视频。而我们今天要讲路由器在OSI模型中的第3层“网络层”工作,是一个三层转发设备我们所说的多少层,不是说设备只在这一层工作,而是最少能到达到这一层。

路由器在OSI模型中的工作层级

2.路由器的结构与分类:

路由器的本质就是一台电脑,通常插着两张网卡,其中一张网卡连接广域网WAN,另外一张网卡连接局域网LANWAN的IP地址由上级网络分配,LAN的IP地址我们可以自己设置。家用路由器一般有自己的默认Lan口IP地址,一般是192.168.1.1/24,在包装说明书或路由器背面的铭牌中都有写明,此地址也是路由器的默认管理地址。

路由器的本质,另外家用路由器是路由交换一体机

更高级的路由器可以有多个WAN口,甚至可以添加虚拟网卡,可以实现“单线多播”负载均衡叠加网速等更高级的功能。另外,路由器也分为硬件路由器和软路由。所谓的硬路由就是我们直接从网上购买到的路由器,主要实现路由功能。而软路由则是在普通电脑上安装openwrt,爱快等路由器系统,实现路由功能的设备,主要是为了实现广告过滤,搭建网络隧道等功能。我们以后会在centos系统中实现部分功能。

3.路由器的功能1:寻址与转发3.1.路由规则

路由器最主要的作用就是实现跨网段的数据传输与转发。就像交通路标一样,指引着车辆和行人的行动,这种指引行为就叫路由,路由器通过路由表来记录转发规则。我们先来看看路由表长什么样吧。因为普通路由器无法查看路由表,所以我在centos7系统上进行演示。

路由器主要是为了实现跨子网的传输

我们在centos系统中输入route -n命令,就可以查询路由表,查询到的路由表有8列,其中第1列Destination为目的地址,第2列Gateway为网关地址,也叫“下一跳”,第3列Genmask为网关掩码,第8列Iface为网卡接口。

查询路由表的方法,路由表

我们将第1列与第3列合并起来,会惊奇地 发现,第一列不就是网络地址吗?忘记的同学可以翻看第2期视频。Flag带有G的规则代表网关规则,若数据包的目的IP地址与路由表中目的地址匹配,路由器会将数据包转发到Gateway中的网关地址。如果flag不带G,说明本条规则不是网关规则,目标地址肯定就在本地链路,通过同一个交换机相连。

如何看路由表

举个例子,如果想发送数据给百度的服务器39.156.69.79,匹配到的目的地址是0.0.0.0/0,那么这个数据包就会被转发给网卡eth0,走默认网关192.168.0.1。

局域网内发送消息给百度

如果数据包的目的地是我的办公室的主机,IP地址为192.168.2.12,那么会同时符合两个目的网段,0.0.0.0/0和192.168.2.0/24,但是路由器会优先匹配更精确的规则,所以数据包通过tun0网卡转发给网关192.168.10.12。

数据包发送到办公室

3.2网络数据包的长距离传输:

网络数据包长距离传输的过程中,会经过一个个的路由器,我们拿局域网内一台主机和百度的通讯举个例子,假设局域网内一台主机192.168.0.4/24要访问公网上的百度主机39.156.69.79。主机查询自己的路由表,把数据包发送给谁呢?

主机查询自己的路由表,把数据包发送给默认网关192.168.0.1(路由器LAN端IP地址)。路由器收到数据包后,继续发送给更上级的默认网关(运营商的路由器),经过多个路由的传递,最终百度主机就会收到信息了。

我们在centos系统中,可以使用traceroute -n 的命令查看中途经过了哪些路由器。我们很清晰地看到,第一个经历的路由器就是我们自己的路由器192.168.0.1,第二个路由器是运营商的路由器,27.19.176.1,中间的路由器都是城市路由的节点。

到百度主机经历的路由器

3.3.路由规则的获得

路由器如何获得路由规则?

路由器想要实现路由功能,首先路由器本身得知道数据应该向哪里传路由器得知这些信息的方式大致有3种第一种方式是直连路由第二种是通过手动添加路由规则,也就是静态路由第三种是通过动态路由协议获得的路由,一般在城市或大型企业网络运用比较多,家庭网络甚至小型企业根本用不上,我们主要了解一下前两种方法。

第一种方式是直连路由。

当主机正确配置好一个IP地址后,会自动生成一条目的地址为该子网的路由。例如树莓派的网卡eth0通过dhcp获得192.168.0.4/24的ip地址,那么会自动产生一条目的地址为网段192.168.0.0/24的路由。如果我在网卡tun0上手动设置IP地址为192.168.10.4/24,也会增加192.168.10.0/24的路由。

第二种方式是手动添加静态路由。

例如我添加目的地址为我办公室的子网192.168.2.0/24,网关地址为192.168.10.12,因为树莓派本机根本不知道192.168.2.0/24的子网在哪里,所以必须手动设置。再例如,在mac系统中,手动配置IP地址时,填写的网关或路由,会生成路由表中的默认路由。

4.路由器的功能2:DHCP服务器功能

路由器的第二个功能为DHCP服务器。

DHCP的全称为Dynamic Host Configuration Protocol,也叫动态主机配置协议。 路由器有自带的DHCP服务器,为接入的设备自动分配IP地址,若要使用此功能,需要在路由器上开启DHCP功能。通过DHCP服务器,可以将配置好的IP地址池,子网掩码,网关信息,DNS信息下发给下联的网络设备。需要注意的是,即便路由器的DHCP功能是开启的,主机仍然可以强制手动设置IP地址,子网掩码等,只要这些和路由器管理地址处于同一个网段,IP地址不冲突,仍然可以正常和路由器通讯以及上网。特别值得注意的是,同一个LAN中,最多只能有一个DHCP服务器处于开启状态,否则可能会导致下联的设备不能正确的获取网络配置,从而导致无法上网。

路由器的DHCP功能

5.路由器的功能3:源地址转换NAT

路由器第三个重要功能,就是利用NAT技术为本地局域网做源IP地址转换SNAT。

NAT的全称是Network Address Translation,S的含义是source,也叫IP伪装技术。我们知道,局域网主机ip地址192.168.0.4/24是一个私有地址,可能邻居家也有这个地址。假设发送到公网的地址也是用这个地址的话,百度主机要给我们返回数据包的时候,由于目的地址是私有地址,中途根本不知道会传到哪里。所以,数据包在出路由器之前,路由器会将该数据包的源IP地址伪装成路由器WAN口的公网IP地址,这样百度想要返回数据包时,目的地址是公网IP地址了,数据包就能顺利传回来了。路由器收到传回来的数据包后,会自动做目的地址转换DNAT,将目的地址从公网IP转换为刚才发送消息的主机192.168.0.4,这样内部主机就能顺利接收信息了,路由器内部所有的设备也都能通过这种方式上网了。

局域网能访问公网的原理

6.路由器的功能4:目的地址转换,端口映射,DMZ主机

路由器第四个重要功能,是端口映射或dmz主机。

这个也是利用NAT技术做目的IP地址转换或目的端口转换。不过此行为的目的是为了从公网主动访问内网。一般情况下,一台计算机从公网想要主动连接局域网内的一台计算机是不可能的,因为数据包的目的IP地址是公网地址,发送到路由器WAN口后,路由器以为这个数据包是传给自己的,然而实际却不是给自己的。在路由器上配置端口映射后,当公网主动传来数据包时,路由器判断是否要将数据转发给内部主机。假设在路由器上配置dmz主机,内网主机地址为192.168.0.4,那么路由器收到公网发送的数据包后,会把数据包的目的IP地址改为192.168.0.4,重新封装后转发给内部的树莓派。此行为相当于将树莓派主机直接映射在公网环境中,这样就能实现从公网主动访问内部主机了。

公网能主动访问局域网主机的原理

7.无线路由器:无线桥接和有线桥接

无线路由器和有线路由器,除了无线发射功能外没有本质区别,只是在LAN口桥接了一个无线网,能够收发无线信号而已。

无线桥接和有线桥接功能理解起来也非常简单,唯一的目标是想办法把两个路由器的LAN合并到一起。

我们只需要知道下面两个关键点,就能掌握好桥接。

1.在一个lan中IP地址必须唯一,因此,从路由的LAN必须和主路由属于同一网段并IP地址唯一。

2.在一个lan中最多只能有一个dhcp服务器,因此要把从路由的DHCP功能关闭。

无线桥接和有线桥接

8.本期总结

到现在为止,我们已经可以实现跨子网的访问了,并知道如何去配置路由器。

如何配置静态路由和dmz主机?如何从公网访问内网主机以及稳定的ddns?

欢迎关注博主,学习更多网络知识!有问题,欢迎评论区讨论!

本期视频问题及参考答案:(私“Q1”看答案) 问题1:使用桥接,从路由的Wan口充当什么角色?“从路由”充当什么角色?

问题2:我在最后讲无线桥接时,在视频中讲到“必须”要保证路由器的LAN口ip地址和主路由Lan口IP地址在同一网段而且唯一。真的是这样吗?请大家思考一下,如果主路由配置不变192.168.0.1/24(开启dhcp),从路由强制设置Lan口IP地址为192.168.5.1(关闭dhcp)。这时,1.通过从路由无线网接入的设备(设备获取IP方式为dhcp或自动获取),是否能正常上网?2.设备获取到的IP地址属于哪个网段?3.现在如何访问从路由管理界面?

下一期视频,带大家分析家庭组网,包括如何设计接线,设备摆位等等,非常简单!希望你们有收获。

后期再对评论中的一些其他方法一一做解释,比如改掩码,静态路由等等。

路由器参数解读传送门。

图文编辑: 旋律果子 猫小爪

欢迎关注博主,一起学习网络知识!有问题,欢迎私信、在评论区留言讨论

旋律果子: 网络Geek/Linux开发者/中国科学院大学在读博士/科技数码博主/国家二级建造师/优质科技领域创作者

标签: #ddns 负载均衡