1. 什么是网关
网关又称网间连接器、协议转换器,也就是网段(局域网、广域网)关卡,不同网段中的主机不能直接通信,需要通过关卡才能进行互访,比如IP地址为192.168.31.9(子网掩码:255.255.255.0)和192.168.7.13(子网掩码:255.255.255.0)的两个主机不是同一网段,想要进行互访就得需要网关。就像古代想要出城的唯一路径就是过城门下的关卡。
网关在传输层上实现不同网段的互连,所以同一网段中的主机互访不需要网关,只有不同网段的主机互访时才需要网关。传输层就相当于一个网段的出口,接收应用层的数据,可能会对数据进行切片,接下来就是网络层中的路由器决定接下来的传输路径。
总结:网关就是网段关卡,主要用于消除不同协议的网段之间的差异,在传输层上实现不同网段的互连,这个网段可以是局域网,也可以是广域网,所以网关又称网间连接器、协议转换器。
2. 判别两主机是否处于同一网段
将主机IP地址与其对应的子网掩码按位相与,就得到主机所属网段地址(网关地址),网段地址一样就说明两主机处于同一网段。
比如IP地址为192.168.31.9(子网掩码:255.255.255.0)的主机:
192.168.31.9转换为二进制11000000.10101000 .00011111.00001001
255.255.255.0转换为二进制11111111.11111111.11111111.00000000
按位相与得到11000000.10101000.00011111.00000000
即主机处于192.168.31.0网段,而192.168.7.13(子网掩码:255.255.255.0)的主机处于192.168.7.0网段。
0与任何数相与都为0,所以可以根据子网掩码255的个数来辨别IP地址是否处于同一网段,比如子网掩码都是255.255.255.0,就看IP地址的前3个数是否一样,子网掩码都是255.255.0.0,就看IP的前2个数是否一样。
子网掩码的主要作用就是将IP地址划分为网络地址和主机地址,将一个大的IP网络划分为几个小的子网络。
3. 网关的主要作用
由以上网关的定义可知,网关按其功能可大致分为以下三类:
①协议网关
主要功能就是完成不同协议的网段之间的协议转换,因为不同协议的网段会具有不同的数据封装格式、不同的数据分组大小和不同的传输率,数据出了网段关卡,若不进行协议转换,是无法顺利传输到其他使用不同协议的网段的。得益于该协议网关将不同协议的各种网络互连起来形成巨大的互联网。
②应用网关
主要功能是将某个服务的数据格式转换为另一个服务的数据格式,也就是接收一种格式的输入,然后将之翻译,以新的格式发送,从而实现特定应用网络间的相互连通。此网关可设在应用层或传输层,常作为某个特定服务的服务器,也称代理服务器。比如邮件服务器,具有很多种邮件格式的网关接口,可以对接收到的不同格式的邮件进行翻译,然后以新的格式进行发送给接收方。
③安全网关
主要功能是对数据报文的原地址、目的地址、端口号、网络协议等进行授权,只有已经被授权了的报文才能通过网关,过滤出没有被授权的报文,然后直接拦截或丢弃。由此可见安全网关主要起到保护作用,可防止一些不安全因素扩散到内部网络,具有防火墙的功能,但功能比防火墙要强大很多,二者也可以结合起来。
3. 网关的运用
网关和路由器不是同一个概念,网关其实就是一个概念,不是具体设备,它可以是PC、路由器、防火墙、多层交换机的某个端口。
比如家庭wifi路由器,网关就是路由器的接口IP地址,路由器上有WAN口、LAN口和WLAN口,WAN广域网就是连接外网的网线接口,LAN局域网是内网接口,也就是路由和用户之间的网线口,WLAN无线局域网也是对内的接口,通过电磁波传输数据。其中LAN口和WLAN口就是内网的网关,也就是接口的网关地址都是一样,所以家里所有的设备对外网来说都是一个IP,而通过路由器内的DHCP给内网设备分配的地址是不一样的(私网IP)。WAN口则是外网IP地址。
比如手机热点,此时手机就是网关,其他手机设备通过该手机接入互联网。