路由器的了解以及搭建

1.路由的作用

  路由器在ISO层次结构中的第三层,根据三层协议的各种信息,完成数据包的选路和转发,最终到达目的地。

2.路由的工作原理

(1)NAT的了解
  NAT(Network Address Translation,网络地址转换)是将IP 数据包头中的IP 地址转换为另一个IP 地址的过程。在实
际应用中,NAT 主要用于实现私有网络访问公共网络的功能。这种通过使用少量的公有IP 地址代表较多的私有IP 地址的
方式,将有助于减缓可用IP地址空间的枯竭
  DNAT (Destination Network Address Translation) 目的网络地址转换,
  SNAT (Source Network Address Translation )源网络地址转换,其作用是将ip数据包的源地址转换成另外
一个地址,可能有人觉得奇怪,好好的为什么要进行ip地址转换啊,为了弄懂这个问题,我们要看一下局域网用户上公网
的原理,假设内网主机A(192.168.2.8)要和外网主机B(61.132.62.131)通信,A向B发出IP数据包,如果没有
SNAT对A主机进行源地址转换,A与B主机的通讯会不正常中断,因为当路由器将内网的数据包发到公网IP后,
公网IP会给你的私网IP回数据包,这时,公网IP根本就无法知道你的私网IP应该如何走了。所以问它上一级路由器,
当然这是肯定的,因为从公网上根本就无法看到私网IP,因此你无法给他通信。为了实现数据包的正确发送及返回,
网关必须将A的址转换为一个合法的公网地址,同时为了以后B主机能将数据包发送给A,这个合法的公网地址
必须是网关的外网地址,如果是其它公网地址的话,B会把数据包发送到其它网关,而不是A主机所在的网关,
A将收不到B发过来的数据包,所以内网主机要上公网就必须要有合法的公网地址,而得到这个地址的方法就是
让网关进行SNAT(源地址转换),将内网地址转换成公网址(一般是网关的外部地址),所以大家经常会看到为了
让内网用户上公网,我们必须在routeros的firewall中设置snat,俗称IP地址欺骗或伪装(masquerade)
(2)区分NAT和SNAT
  从定义来讲它们一个是源地址转换,一个是目标地址转换。都是地址转换的功能,将私有地址转换为公网地址。
  
  要区分这两个功能可以简单的由连接发起者是谁来区分:
  
    内部地址要访问公网上的服务时(如web访问),内部地址会主动发起连接,由路由器或者防火墙上的网关对内部地址做
个地址转换,将内部地址的私有IP转换为公网的公有IP,网关的这个地址转换称为SNAT,主要用于内部共享IP访问外部。
当内部需要提供对外服务时(如对外发布web网站),外部地址发起主动连接,由路由器或者防火墙上的网关接收这个连接,
然后将连接转换到内部,此过程是由带有公网IP的网关替代内部服务来接收外部的连接,然后在内部做地址转换,
此转换称为DNAT,主要用于内部服务对外发布。

注:在配置防火墙或者路由acl策略时要注意这两个NAT一定不能混淆。
(3)什么是路由器?
    在局域网中,主机可以通过广播的方式来进行网络数据包的发送,但是在不同的网段类的主机想要互相连接时就必须通过
路由器来实现。路由器(Router)又称网关设备(Gateway)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个
单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器的路由功能来完成。因此,路由器具有
判断网络地址和选择IP路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质
访问方法连接各种子网,路由器只接受源站或其他路由器的信息,属网络层的一种互联设备。     

3.配置desktop为双网卡主机,使其充当路由器,实现两个不同网段的主机可以通信(此处是单侧路由)

[root@foundation42 ~]# virt-manager   # 在真机上执行这条命令

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

[root@desktop Desktop]# ifconfig    # 查看到有两块网卡,eth0是外网也就是公网,eth1是内网

在这里插入图片描述

[root@desktop Desktop]# cd /etc/sysconfig/network-scripts/
[root@desktop network-scripts]# cp ifcfg-eth0 ifcfg-eth1
[root@desktop network-scripts]# vim ifcfg-eth1   # 添加eth1网卡 (内网)
	1 DEVICE=eth1  
	2 ONBOOT=yes  
	3 BOOTPROTO=none  
	4 IPADDR=192.168.0.142  
	5 NETWORK=255.255.255.0  
	6 #PREFIX=24  
	7 NAME=eth1
[root@desktop network-scripts]# systemctl restart network
[root@desktop network-scripts]# ifconfig    # eth1创建成功

在这里插入图片描述

[root@desktop ~]# systemctl start firewalld     # 打开防火墙
[root@desktop ~]# firewall-cmd --add-masquerade   # 添加地址伪装,即开启路由功能
Success

# 配置server 
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

在这里插入图片描述

[root@localhost ~]# systemctl restart network
[root@localhost ~]# ifconfig    # 查看ip设定成功

在这里插入图片描述

[root@localhost ~]# route -n    # 查看网关添加成功

在这里插入图片描述

[root@localhost ~]# ping 172.25.254.42   # 可以ping通172.25.254.42这个与自己不同网段的主机,说明通信成功,这个是由路由器来实现的

在这里插入图片描述

[root@localhost ~]# ssh [email protected]  # 连接一个和自己网段不同的主机
[root@foundation34 ~]# w -i   # 在登陆的这台主机上查看登陆自己的主机时,查看到的是路由器的ip,而不是真实连接自己的主机,即伪装成功

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/wzt888_/article/details/83067251
今日推荐