一、 VLAN
1. VLAN基本原理
- VLAN技术通过在交换机上配置VLAN机制,将一个大的交换网络在逻辑上划分成多个小的交换网络。
- 隔离广播域,阻断通信
2. VLAN帧格式
3. VLAN的类型
- 基于端口的VLAN ···· 一层VLAN
- 在接口进行配置,将vlan编号映射到交换机物理接口
- 从该接口进入的帧都将被认为是该vlan
- 最常用的方式
- 基于MAC地址的VLAN ···· 二层VLAN
- 配置一个vlan和mac地址的映射关系,当数据帧进入交换机时,交换机会查询该映射关系表,根据不同的源MAC地址来划分不同的vlan ;
- 一般用于PC接入交换机的端口会发送变化的情况。
- 基于协议的VLAN ···· 三层VLAN
4. VLAN端口类型
- Access端口
- 一般用于交换机与终端设备相连的接口
- 假设此时有一个Access端口,其VID为2,从这个端口进入的数据包,都会被规划到vlan2,而从这个端口发出的vlan则必须是vlan2的数据包,并且删除vlan的字段。
- Trunk端口
- 一般用于交换机与交换机相连的接口
- Hybrid端口
- 同时具备Access和Trunk端口的功能,是一种工作机制及其灵活的端口;
5. VLAN的配置
- 第一步,在交换机上创建VLAN
- VID( VLAN ID ),用来标识和区分VLAN。
取值范围 0-4095;其中 0 和 4095 保留不能使用,可使用范围是 1- 4094;
- VID( VLAN ID ),用来标识和区分VLAN。
[sw1]vlan 2 //创建vlan2;默认情况下交换机存在 vlan1,并且所有接口属于 vlan1
[sw1]vlan batch 4 10 20 //同时批量的创建 vlan4、10、20
[sw1]vlan batch 30 to 60 //同时批量的创建 vlan30到vlan60
- 第二步,将接口划入VLAN
[sw1]interface GigabitEthernet 0/0/1 //进入接口
[sw1-GigabitEthernet0/0/1]port link-type access //将接口类型更改为access
[sw1-GigabitEthernet0/0/1]port default vlan 2 //将接口划分给vlan 2
查表:
[sw1]display vlan summary //查看vlan简表
[sw1]display vlan //查看vlan表
- 第三步,配置Trunk干道
- 配置位置:交换机与交换机相连的接口
- 注意:不在trunk的允许列表中的vlan不允许通过该接口。并且,trunk的配置是双向的。
[sw1]interface GigabitEthernet 0/0/3 //进入与其他交换机相连的接口
[sw1-GigabitEthernet0/0/3]port link-type trunk //修改接口类型为 trunk
[sw1-GigabitEthernet0/0/3]port trunk allow-pass vlan 2 3 //在trunk 的允许通过列表中加入vlan2和vlan3
[sw1-GigabitEthernet0/0/3]port trunk allow-pass vlan all //代表放通所有vlan
6. VLAN之间通讯
- 多臂路由实现VLAN间通讯 — 物理接口
- 单臂路由实现VLAN间通讯 — 逻辑接口
- 单臂路由就是通过对路由器的物理接口划分子接口的方式进行数据转发。
- 子接口是基于路由器以太网接口所创建的逻辑接口,以物理接口ID+子接口ID(1-4096)进行标识,子接口具备同物理接口一样的三层路由转发功能。
- 子接口不同于物理接口,子接口可以处理携带VLAN Tag的数据帧。
- 当收到携带与自己相同属性的VLAN Tag的数据包时,将剥离该标签。
- 当需要发送一个数据时,则会将自己所属的VLAN Tag加入到该数据包中。
- 基于一个物理接口所创建的子接口,可以有多个。该物理接口所连接的交换机的 Trunk 接口,需要放通多个VLAN。
- 配置
第四步(针对三层设备)
[r1]interface GigabitEthernet 0/0/0.1 //创建子接口
[r1-GigabitEthernet0/0/0.1]ip address 192.168.1.254 24 //配置网关IP地址
[r1-GigabitEthernet0/0/0.1]dot1q termination vid 2 //开启路由器子接口处理vlan标签的功能,并定义其处理的vlan为2(默认不开启)
[r1-GigabitEthernet0/0/0.1]arp broadcast enable //开启子接口的ARP功能,因为我们的PC在第一次通讯的时候需要请求网关的MAC地址,而子接口(虚拟接口)默认不进行ARP应答
- 三层交换机(具备路由功能的交换机)实现VLAN间通讯
7. 三层交换机的SVI接口
- 二层交换机指的是仅具备二层交换功能的交换机。
- 三层交换机,除了具备二层交换机的所有功能外,还支持通过三层接口实现路由转发的功能。
- 三层交换机对于VLAN数据包的通讯经过了四个接口。
- VLANif接口是一种三层的逻辑接口,支持VLAN Tag的剥离和添加操作,因此可以通过VLANif接口实现VLAN间通讯。
- 子接口与SVI接口对比
- 子接口本身并不具备对标签的处理功能。而SVI接口具备。
- 子接口本身通讯需要开启ARP功能,而SVI接口不需要。
- VLANif接口编号与所对应的VLAN ID相同。
- 配置
[sw3]vlan batch 2 3 //创建 vlan
[sw3-GigabitEthernet0/0/1]port link-type trunk
[sw3-GigabitEthernet0/0/1]port trunk allow-pass vlan 2 3
[sw3]interface Vlanif 2 //创建VLANif接口,且编号为2.该接口可以处理 vlan2 的标签。
[sw3-Vlanif2]ip address 192.168.1.254 24
二、 ACL技术 – 访问控制列表
- 网络安全
- 网络管理—SNMP协议(实体发送请求的应答报文的默认端口是161,SNMP代理发送陷阱报文Trap的默认端口号是162)
1. ACL原理
- 配置了ACL的网络设备会根据事先设定好的报文匹配规则对经过该设备的报文进行匹配,然后对报 文执行预先设定好的处理动作。
- ACL是一张表,就是一系列规则的集合。
2. ACL功能
- 访问控制:在设备的流入或流出接口上,匹配流量,然后执行设定的动作
- 流量的流入或者流出是一个相对的概念
- 动作
- Permit — 允许
- Deny — 拒绝
- 抓取流量
- 因为ACL经常与其他协议共同使用,所以ACL一般只做匹配流量的作用,而对应的动作由其他 协议完成。
- 路由策略、策略路由、防火墙、QoS技术
3. ACL的匹配规则
- 自上而下,逐一匹配
- 匹配上则按照该规则进行执行,不再向下匹配。
- 未匹配上,则执行默认规则。
- 在思科设备上,ACL访问控制列表的最后隐含条件:拒绝所有规则。
- 在华为设备上,ACL访问控制列表的最后隐含条件:允许所有规则。
4. ACL分类
- 基本ACL
- 只能基于IP报文的源IP地址、报文分片标记和时间段信息来定义规则
- 编号:2000-2999(用于区分不同的列表)
- 高级ACL
- 可以基于IP报文的源目IP地址、源目端口号、协议字段、IP报文优先级、报文长度等信息来定义规则
- 编号:3000-3999
- 二层ACL
- 使用报文的以太网帧头信息来定义规则
- 编号:4000-4999
- 用户自定义ACL
- 即可以使用IPv4报文的源IP地址,也可以使用目的IP地址,协议类型、甚至使用ICMP、TCP、 UDP、IPv6等协议的各类字段信息来定义规则
- 编号:5000-5999
5. 实验配置
- 需求一:PC1可以访问192.168.2.0网段,而PC2不行
- 分析结果
- 仅对源有要求,配置基本ACL即可
- 基本ACL配置位置
- 由于基本ACL仅关注数据包中的源IP地址,故配置时需尽量靠近目标,避免对其他地址访问误伤;
- 假设此时,在R1上配置,那么它不仅仅是无法到达192.168.2.0网段,其余网段也不可以
- 配置
- 分析结果
[r2]acl 2000 //创建基本acl列表
[r2-acl-basic-2000]rule deny source 192.168.1.2 0.0.0.0 //配置规则,拒绝源IP地址为192.168.1.2的地址通过
【0.0.0.0这个字符串--->通配符(0代表不可变,1代表可变)】
[r2-acl-basic-2000]rule 8 permit source any //允许所有
【该数字是规则的序列号,华为默认步长为5,如果未指定规则的序列号,则每条规则都是从前 一条规则的序列号+5得出,方便后期在任意两条规则中间加入或者删除规则】
[r2-GigabitEthernet0/0/1]traffic-filter outbound acl 2000 //在0/0/1接口 调用ACL2000,且方向为出方向。
【一个接口的一个方向只能调用一张ACL列表;但是一张ACL列表可以在不同的地方多次调用】
[r2]display acl 2000 //查看ACL列表
[r2-acl-basic-2000]undo rule 8 //删除已存在的ACL规则
- 需求二:要求PC1可以访问PC3,但是不能访问PC4
- 分析:对目标有要求,需要使用高级ACL技术
- 高级ACL的配置位置
- 由于高级ACL对流量进行了精准匹配,可以避免误伤,所以调用时应当尽量靠近源,减 少链路资源的占用。
- 配置
[r1]acl 3100 //创建高级ACL列表
[r1-acl-adv-3100]rule 5 deny ip source 192.168.1.1 0 destination 192.168.2.2 0 //设置检测IP报文的源目地址
[r1-GigabitEthernet0/0/1]traffic-filter inbound acl 3100 //调用
- 需求三: 要求PC1可以ping通R2,但是不能telnet R2
- 分析:需求中包含telnet,也就是涉及了TCP或UDP的端口。使用高级ACL
- 配置
[r1]acl 3000
[r1-acl-adv-3000]rule deny tcp source 192.168.1.1 0 destination 2.2.2.2 0 destination-port eq 23 //拒绝TCP协议,源为192.168.1.1 目的1.1.1.1,端口号为23的 数据流量
[r1-acl-adv-3000]rule 10 deny tcp source 192.168.1.1 0 destination 2.2.2.2 0 des tination-port eq telnet //两种方式二选一
[r1-GigabitEthernet0/0/1]traffic-filter inbound acl 3000 //调用
三、 NAT — 网络地址转换
- NAT一般应用于内网的出口路由器或者防火墙上。
- NAT技术,对于从内到外的流量,设备会通过NAT将数据包的源地址进行转换(转换成特定的公网地址);而对于从外到内的流量,则对数据包的目的地址进行转换。
- 私有地址网段
1. NAT的分类
-
静态NAT
-
在边界路由器上建立并维护了一张静态地址映射表。表中记录了公有IP地址和私有IP地址之间的对应关系。
-
静态NAT是一个一对一的NAT
-
工作过程
- 当内网数据包来到边界路由器上,会先检查其目的IP地址是不是公网IP地址。
- 如果是公网地址,则会根据事先配置好的静态地址映射表查找该源IP对应的公网IP地址。
1) 如果有记录,则将源IP地址转换为对应的公网IP地址,然后将数据包转发至公网。
2) 若没有记录,则丢弃数据包。 - 如果是私网地址,则根据自身路由表向内网进行转发。
-
配置
-
[r1-GigabitEthernet0/0/0]nat static global 12.1.1.10 inside 192.168.1.1
[r1]display nat static //查询静态地址映射表
注意:不允许使用出接口地址作为公网转换IP地址(NAT地址)需要使用漂浮IP:12.1.1.10 ,必须与出接口地址处于同一网段,并且这个IP地址是从运营商买来的合法的公网IP地址。
-
动态NAT
- 动态NAT技术的地址映射表内容可变。
- 一对多、多对多
- 动态NAT在同时间内,还是一个公网IP对应一个私网IP。
- 也就是说,当上一个流量回来后,下一个流量才能转换IP地址并转发数据。
- 配置
- 必须是真实购买的IP地址
- 必须是连续的
- 与出接口IP处于同网段,且非出接口IP地址
- 动态NAT技术的地址映射表内容可变。
[r1]nat address-group 1 12.1.1.10 12.1.1.15 //配置公网IP组
[r1]acl 2000
[r1-acl-basic-2000]rule permit source 192.168.1.1 0 //抓取PC1流量
[r1-acl-basic-2000]rule permit source 192.168.1.2 0 //抓取PC2流量
[r1-GigabitEthernet0/0/0]nat outbound 2000 address-group 1 no-pat //将ACL与公网IP组进行绑定
[r1]display nat address-group 1 //查看NAT地址组
no-pat:只能进行IP地址转换,而不进行端口转换
-
NAPT
- 网络地址端口转换技术
- 是在路由器上维护一张源端口号和私网IP地址的映射关系表
- 1-65535
- EASY IP — 华为私有技术
- 一对多NAPT:使用的公网地址池是边界路由器的出接口IP地址;(只有65535个,超出不能用此技术)
- 多对多NAPT:见上(不带命令no pat)
- 配置命令
[r1-acl-basic-2000]rule permit source 192.168.1.0 0.0.0.255 //抓取流量
[r1-GigabitEthernet0/0/0]nat outbound 2000 //接口调用
[r1]display nat outbound //查看NAT配置信息
[r1-GigabitEthernet0/0/0]nat server protocol tcp global current-interface 23 inside 192.168.1.100 telnet
[r1-GigabitEthernet0/0/0]nat server protocol tcp global current-interface 8888 inside 192.168.1.100 telnet