具体路由器转发规则

当主机A发向主机B的数据流在网络层封装成IP数据包,IP数据包的首部包含了源地址和目标地址。主机A会用本机配置的24位IP网络掩码255.255.255.0与目标地址进行与运算,得出目标网络地址与本机的网络地址是不是在同一个网段中。如果不是将IP数据包转发到网关。

 

在发往网关前主机A还会通过ARP的请求获得默认网关的MAC地址。在主机A数据链路层IP数据包封装成以太网数据帧,然后才发住到网关……也就是路由器上的一个端口。

 

当网关路由器接收到以太网数据帧时,发现数据帧中的目标MAC地址是自己的某一个端口的物理地址,这时路由器会把以太网数据帧的封装去掉。路由器认为这个IP数据包是要通过自己进行转发,接着它就在匹配路由表。匹配到路由项后,它就将包发往下一条地址。

 

路由器转发数据包就是这样,所以它始终是不会改IP地址的。只会改MAC.

 

当有数据包传到路由器时,路由器首先将其的目的地址与路由表进行对比,如果是本地网络,将不会进行转发到外网络,而是直接转发给本地网内的目的主机,改变的只是数据包的源地址,(原源地址MAC变为了路由器的MAC);当然其中的过程关系到相关的协议的使用,像什么ARP,IP等。但是如果目的地址经路由表对比,发现不是在本网中,有nat就将改变源地址的IP(原源地址的Ip地址改为了路由器的IP地址),路由器将熟数据包转发到相应的端口,进行通信。

 

如:A访问B,首先对比是否同一子网,如果是,检查ARP表,有B的MAC就直接发送,没有就发送ARP请求.如果否,发送到默认网关C,源IP为A,源MAC为A,目的IP为B,目的MAC地址为C,C接收到这个包,检查路由表,发送到下一跳D,源IP为A,源MAC为C,目的IP为B,目的MAC为D.....如此循环,直到发送到B.NAT为特殊应用,会修改源IP为网关自己外网IP。

 

TCP通过确认 和 重传 机制保障传输可靠性

ICMP:

 

各种ICMP报文的前32bits都是三个长度固定的字段:type类型字段(8位)、code代码字段(8位)、checksum校验和字段(16位)

 

D类I P地址范围在244.0.0.0到239.255.255.255之间。它分为两类:永久地址和临时地址。永久地址是为特殊用途而保留的。比如,244.0.0.0根本没有使用(也不能使用),244.0.0.1代表子网内的所有系统(主机),而244.0.0.2代表子网内的所有路由器。

IP 地址中,网络部分和主机部分都为全0 的地址表示 所有网络

 

 

    当访问Internet时,需要利用网络地址转换(

NAT,NetworkAddress Translation)技术,把私有IP地址转换为

Internet可识别的公有IP地址。

 

    对于主机部分全为“0”的IP地址,称为网络地址,网络地址用来

标识一个网段。例如,A类地址1.0.0.0,私有地址10.0.0.0,

192.168.1.0等。

对于主机部分全为“1”的IP地址,称为网段广播地址,广播地址

用于标识一个网络的所有主机。例如,10.255.255.255,

192.168.1.255等。

 

 

网络地址计算:

网络地址就是IP地址的二进制和子网掩码的二进制进行“与”的

结果。

“与”的计算方法是1&1=1,1&0=0,0&0=0。胶片中IP地址和子网

掩码的与计算为:

11000000,10101000,00000001,00000111

& 11111111, 11111111,11111111,11110000

11000000,10101000,00000001,00000000

最后得到的就是网络地址。

 

网段地址是一个C类地址:201.222.5.0。假设需

要20个子网,其中每个子网5个主机,每个网段分别为:

201.222.5.0~201.222.5.7

201.222.5.8~201.222.5.15

201.222.5.16~201.222.5.23

………

201.222.5.232~201.222.5.239

201.222.5.240~201.222.5.247

201.222.5.248~201.222.5.255

 

如图所示,路由器工作流程为:

物理层从路由器的一个端口收到一个报文,上送到数据链路层。

数据链路层去掉链路层封装,根据报文的协议域上送到网络层。

网络层首先看报文是否是送给本机的,若是,去掉网络层封装,

送给上层。若不是,则根据报文的目的地址查找路由表,若找到

路由,将报文送给相应端口的数据链路层,数据链路层封装后,

发送报文。若找不到路由,将报文丢弃,并按需要发送相关错误

信息。

 

你可能感兴趣的:(具体路由器转发规则)