网络总结
NAT
三种方式:
-
静态转换Static Nat
-
动态转换Dynamic Nat
-
端口多路复用OverLoad
eNSP或者cisco实验(这里使用cisco):
-
静态转换Static Nat
R-1(config)#ip nat pool fpc 180.101.50.100 180.101.50.200 netmask 255.255.255.0 #声明一个nat地址池 R-1(config)#ip nat inside source static 192.168.31.2 180.101.50.100 #在地址池选一个ip,对终端做ip映射:内侧192.168.31.2的终端ip映射成180.101.50.100 R-1(config)#ip nat outside source static 180.101.50.100 192.168.31.2 #对外侧180.101.50.100的路由器接口ip映射成191.168.31.2
R-1(config)#int g0/0/0 #路由器接口g/0/0是内侧 R-1(config-if)#ip nat inside R-1(config-if)#exit R-1(config)#int g0/0/1 #路由器接口g0/0/1是外侧 R-1(config-if)#ip nat outside
R-1# show ip nat statistics #查看接口配置
Total translations: 2 (1 static, 1 dynamic, 0 extended)
Outside Interfaces: GigabitEthernet0/0/1
Inside Interfaces: GigabitEthernet0/0/0
R-1# show ip nat translations #查看nat配置,inside global 内部公网ip,inside local 内部私网ip ,outside local 外部私网ip, outside global 外部公网ip
Pro Inside global Inside local Outside local Outside global
--- 180.101.50.100 192.168.31.2 --- ---
--- --- --- 192.168.31.2 180.101.50.100

-
动态转换Dynamic Nat
Router(config)#ip nat pool fpc 180.101.50.100 180.101.50.200 netmask 255.255.255.0 #声明一个nat地址池
Router#access-list 1 permit 192.168.31.0 0.0.31.255 ip nat inside source list 1 pool fpc int g0/0 ip nat inside exit int g0/1 ip nat outside
Router#show ip nat statistics
Total translations: 8 (0 static, 8 dynamic, 8 extended)
Outside Interfaces: GigabitEthernet0/0/1
Inside Interfaces: GigabitEthernet0/0/0
Hits: 8 Misses: 10
Expired translations: 2
Dynamic mappings:
-- Inside Source
access-list 1 pool fpc refCount 8
pool fpc: netmask 255.255.255.0
start 180.101.50.100 end 180.101.50.200
type generic, total addresses 101 , allocated 1 (0%), misses 0
Router#
Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global # 每次ping都不一样,随机从池中获取ip映射
icmp 180.101.50.100:10 192.168.31.2:10 180.101.51.2:10 180.101.51.2:10
icmp 180.101.50.100:3 192.168.31.2:3 180.101.51.2:3 180.101.51.2:3
icmp 180.101.50.100:4 192.168.31.2:4 180.101.51.2:4 180.101.51.2:4
icmp 180.101.50.100:5 192.168.31.2:5 180.101.51.2:5 180.101.51.2:5
icmp 180.101.50.100:6 192.168.31.2:6 180.101.51.2:6 180.101.51.2:6
icmp 180.101.50.100:7 192.168.31.2:7 180.101.51.2:7 180.101.51.2:7
icmp 180.101.50.100:8 192.168.31.2:8 180.101.51.2:8 180.101.51.2:8
icmp 180.101.50.100:9 192.168.31.2:9 180.101.51.2:9 180.101.51.2:9

总而言之,去SNAT,回DNAT PAT(端口映射):去DNAT,回SNAT
相同vlan之间通信,目的是为了隔离广播域:
vlan与交换 trunck技术(路由器成本昂贵,vlan是很好的替代品)
vlan:虚拟局域网技术,可以从逻辑上将将一个大的网络划分若干小的局域网,从而达到控制广播流量的效果。
交换机的泛洪流量在虚拟局域网内进行 ---> 默认是VLAN1

拆分广播域,切割局域网方式:
1、路由(路由器价格昂贵)
2、子网掩码,划分不同的子网,不同子网间不能通信,但是还可以发送广播
3、vlan,主要是控制广播泛洪,2、安全性 虚拟局域网(vlan)之间由二层上升到三层通信,间接通信
- 在局域网,网络规模不断的扩大,接入的主机以及设备会越来越多,在这种情况下,网络中的广播流量越来越大,于是会加重交换机的负担,消耗交换机的cpu,内存等,甚至造成交换机的死机。

在vlan技术中,只有同一vlan内的端口内的主机才可以进行通信,不同vlan端口之间不能直接通信访问。因此vlan可以限制个别主机访问服务器资源,这样可以提高局域网络的安全性。

如果没有设置trunc接口,那么交换机的主干路默认是vlan 1 ,而pc 是vlan 10 和vlan20 无法通信
同一个vlan可以通信,即使跨交换机
如上图,要想vlan 10的pc相互通信,需要在两个交换机的fa0/3接口设置vlan 10,同理要想vlan 20的两台pc通信,需要在两个交换机的fa0/4接口设置vlan 20
于是就是上面的图,用两根线连接,如果交换机划分区域很多,那么就要很多线,于是出现了trunc中继干路技术

可以看到设置了trunc,逻辑上把所有vlan融合在一起为一根交叉线连接两台交换机,然后vlan 10 和vlan20的机器就可以通信了
如果交换机很多,需要手动设置每个交换机的trunc口和vlan信息,于是出现vtp协议,只要设置vtp sever的交换机,vtp client自动同步上述信息

三层交换技术(不同vlan之间通信):
由于不同的vlan之间是无法实现直接通信的,但是在某些情况,为了实现在不同vlan间的通信,我们就需要使用路由技术
为什么不直接不配置vlan,直接通信? 切割广播域,屏蔽不必要的广播,保证网络的畅通性。
单臂路由可以实现不同隔离的vlan实现通信,基于路由器的子接口进行相关设置(基于路由通信技术,目前基本被三层交换取代) 注意:不同的VLAN要有不同的网关
-
单臂路由


- 将单臂路由器和交换机的接口链路打开(no shutdown)
- 将二层交换机和单臂路由的接口设置成中继trunk
- 分别进入单臂路由的子接口,进行封装数据格式,并连接对应的vlan号
-
设置每个子接口对应的网关IP地址和子网掩码,并激活子接口
使用一个物理接口下的2个子接口配置路由对vlan转发数据包
encapsulation dot1Q 10 (vlan号为10) ip address 192.168.31.1 255.255.255.0 no shutdown int g0/0.2 encapsulation dot1Q 20 (vlan号为20) ip address 192.168.33.1 255.255.255.0 (192.168.33.1是vlan的网关)
-
三层交换技术
即可实现普通的在二层的数据交换,也可以实现在第三层的数据转发(在实现数据交换的同时具备了不同网段路由转发的功能),每一个vlan的虚接口就是该网段的网关。 简单来说,三层交换=二层交换+三层转发
单臂路由不具备扩展性,当VLAN的数量不断增加,数据量增大,路由器与交换机之间的路径会成为整个网络的瓶颈,这时候的单臂路由就不再适用了

路由器换成三层交换机

和单臂路由类似,
将三层交换开启路由功能 全局模式下 ip routing
将三层交换机和其他交换机的接口配置成trunk(干道) 进入某个接口的接口模式, int f0/x 先配置封装格式 swichport trunk encapsulation dot1q ,然后配置问trunk swichport mode trunk
配置三层交换的虚接口 先创建一个新的vlan口,然后进入指定的vlan接口 vlan 2
然后进入虚接口配置另一个trunk(干道) int f0/x swichport trunk encapsulation dot1q swichport mode trunk
为vlan配置ip和子网掩码 int vlan 1 ip address 192.168.1.1 255.255.255.0 no shutdown Int vlan 2 ip address 192.168.2.1 255.255.255.0 no shutdown
查看三层交换机的路由表:特权模式下 show ip routing
VPN技术
在公用网络上建立专用网络,一般都会进行加密通讯。 在企业网络中有广泛应用。VPN网关通过对数据包的密和数据包目标地址的转换实现远程访问。 VPN可通过服务器、硬件、软件等多种方式实现。
进入封装多个IP报头方式来实现隧道虚拟网络
实现方式:GRE VPN、IPsec VPN、软件VPN(例如openvpn)等

您提供的配置命令是用于在两台路由器(R-1和R-3)上设置基于IP的GRE(Generic Routing Encapsulation)隧道,这是一种常用于创建VPN(Virtual Private Network)的隧道技术。下面是对配置步骤的解释: R-1的配置: R-1(config)#int tunnel 1 这条命令在R-1上创建了一个名为tunnel 1的逻辑接口。 R-1(config-if)#ip add 192.168.100.100 255.255.255.0 这条命令为tunnel 1接口分配了IP地址192.168.100.100和子网掩码255.255.255.0。 R-1(config-if)#tunnel source g0/1 这条命令指定了隧道源接口为g0/1,即从R-1的物理接口g0/1发送封装的数据包。 R-1(config-if)#tunnel destination 200.1.2.1 这条命令指定了隧道的目的地为200.1.2.1,这是R-3的公网接口IP地址。 R-1#show ip int brief 这条命令用于显示R-1上所有接口的简要状态信息,包括tunnel 1接口。 R-3的配置: R-3(config)#int tunnel 1 这条命令在R-3上创建了一个名为tunnel 1的逻辑接口。 R-3(config-if)#ip add 192.168.100.101 255.255.255.0 这条命令为tunnel 1接口分配了IP地址192.168.100.101和子网掩码255.255.255.0。 R-3(config-if)#tunnel source g0/1 这条命令指定了隧道源接口为g0/1,即从R-3的物理接口g0/1发送封装的数据包。 R-3(config-if)#tunnel destination 200.1.1.1 这条命令指定了隧道的目的地为200.1.1.1,这是R-1的公网接口IP地址。 R-3#show ip int brief 这条命令用于显示R-3上所有接口的简要状态信息,包括tunnel 1接口。 路由配置: R-1(config)#ip route 192.168.20.0 255.255.255.0 192.168.100.101 这条命令在R-1上添加了一条静态路由,指示去往192.168.20.0/24网络的数据包应该通过tunnel 1接口发送到192.168.100.101,这是R-3隧道接口的IP地址。 R-3(config)#ip route 192.168.10.0 255.255.255.0 192.168.100.100 这条命令在R-3上添加了一条静态路由,指示去往192.168.10.0/24网络的数据包应该通过tunnel 1接口发送到192.168.100.100,这是R-1隧道接口的IP地址。 总结: 通过上述配置,R-1和R-3之间建立了一个GRE隧道,允许两个私有网络(192.168.10.0/24和192.168.20.0/24)通过公网进行通信,就像它们在同一个局域网内一样。GRE隧道封装了内部网络的数据包,并通过公网发送到对端路由器,对端路由器解封装这些数据包并转发到内部网络。
-
静态路由 (
ip route命令):- 静态路由告诉路由器如何到达特定的网络。在您的例子中,
ip route 192.168.20.0 255.255.255.0 192.168.100.101命令在R-1上配置了一条静态路由,指示去往192.168.20.0/24网络的数据包应该发送到下一跳地址192.168.100.101。这个下一跳地址是隧道接口在R-3上的IP地址,但是它并不指定如何封装这些数据包。
- 静态路由告诉路由器如何到达特定的网络。在您的例子中,
-
隧道目的地 (
tunnel destination命令):tunnel destination命令是GRE隧道接口配置的一部分,它指定了封装后的GRE数据包应该发送到的远程公网IP地址。这个地址是R-3的公网接口IP地址(在这个例子中是200.1.2.1),而不是隧道接口的IP地址。这个命令是必需的,因为它是GRE封装过程的一部分,它告诉路由器在哪里找到GRE隧道的另一端。
总结来说,静态路由告诉路由器数据包应该通过哪个隧道接口发送,而tunnel destination命令告诉路由器GRE封装的数据包应该发送到哪个远程公网地址。两者都是必要的,因为:
- 静态路由确保数据包能够到达隧道接口。
tunnel destination确保封装的数据包能够通过公网到达隧道的另一端。
如果没有tunnel destination,路由器将不知道如何通过公网发送封装的数据包,即使它知道数据包应该通过哪个隧道接口发送。因此,这两个配置是互补的,并且都是GRE隧道配置中不可或缺的部分。
int tunnel 1可能在很多路由器有设置,具体指定目的地址是哪个公网ip是有必要的

1、先加200的路由,保证主干路是通的
2、加192.168的路由,两个局域网在隧道的路由是通的

浙公网安备 33010602011771号