本次实验需要构建模拟内外网,其中内网设置2个VLAN分别是VLAN10和VLAN20,最终连接到路由器,路由器作为内网出口连接外网,并且设计同在一个交换机下的两个VLAN以及增加一个扩展交换机下的VLAN连到路由器,实现同个VLAN的互通以及对外网10.0.0.254的互通,拓扑图如下:
配置静态IP这里就不赘述了,拓扑图中已经标识出来,当然可以在实现的时候扩展使用DHCP来实现自动获取IP和自动配置网关,使用DHCP的话在路由器Router上开启DHCP、配置相关地址池即可,当然前提是要保证下面的主机能够ping通路由器。
注:HCL有一个对于新人的小坑,对于交换机,开启了显示接口名,明明显示的是GE_0/1,但是在实际配置中是需要写成 gi 1/0/1,少了一个1/,在刚开始使用的时候经常发现进去的接口不对或者根本没有这个接口,而路由器确实就是gi 0/0没有问题。
还有,如果在HCL中加入了PC虚拟主机,是需要在右键配置里边打开"接口管理"选项,否则接口时打不开的,刚开始使用HCL也踩了坑。
从主机到交换机,这里用的access链路,使用比较简便的配置方法,直接创建VLAN,在VLAN视图里加入指定的端口即可,当然,也可以进各自的interface下配置port link-type access,直接加入指定端口的链路类型也是access。
[SW-center]vlan 10
[SW-center-vlan10]port GigabitEthernet 1/0/1
[SW-center-vlan10]port GigabitEthernet 1/0/2
同样VLAN 20 也这样配置,不再赘述。
对于交换机连到路由器,这里用的是trunk链路,我们需要指定链路类型,配置允许指定VLAN通过这个端口,配置如下
[SW-center-GigabitEthernet1/0/5]port link-type trunk
[SW-center-GigabitEthernet1/0/5]port trunk permit vlan 10 20
在实验时也可以模拟需求来扩展加入设置缺省VLAN,通过port trunk pvid vlan vlan-id可以实现。
配置方法是一样的,从主机到交换机也是配置的access链路,从交换机到路由器也是配置的trunk链路,并且方法一样,读者可以自行举一反三。
配置路由器我们需要把路由器上的interface的一个大的分成小的,例如:int gi 0/0.10 ,根据设置的VLAN数量来决定要用几个子接口,这里划分了VLAN 10和 VLAN 20 ,所以使用了0/0.10和0/0.20,通过dot1q来指定映射的VLAN,这个叫做用802.1Q和子接口实现VLAN间路由,具体协议可以自行扩展,这里还是着重用法和经验,具体配置如下:
[R1]int gi 0/2.10
[R1-GigabitEthernet0/2.10]vlan-type dot1q vid 10
[R1-GigabitEthernet0/2.10]ip add 192.168.3.1 24
大概就是遵循配置子接口对相应VLAN的映射,配置IP(这里作为网关)
VLAN 10 和VLAN 20的配置都是一样的做法,对于扩展的路由器SW-ex也是需要在和路由器连接的那条路的路由器端的接口的子接口配置,不再赘述
至此已经能做到拓扑图中小方块之间的互通了,但是上面的VLAN10还是无法ping到下面的VLAN10,因为上面的VLAN10的主机和下面VLAN10的主机并不处在同一个网段(192.168.1.0/24和192.168.3.0/24),并且没有指定网关,192.168.1.254主机不知道发送给192.168.3.252的包要发到哪里去,那干脆就不发了,抓包发现只有ARP请求,并且没有响应,所以没有后续,需要我们指定网关,或者指定静态路由把主机不知道发去哪里的包指一条路,这里因为选用的路由器充当主机,配置静态路由把他不认识的目的地址扔给我们的路由器,就像网关一样:
[net1]ip route-static 0.0.0.0 0 192.168.1.1
讲白话就是你不认识他,你交给上级,上级认识,让上级给你转发,配置这条静态路由就像当于只要是我不认识的我都给上级转发。
至此已经能够实现内网中相应VLAN的通信了,上面的VLAN 10 已经可以ping到下面的VLAN 10
扩展一下,如果要实现不同VLAN间的相互通信,可以通过设置ARP broadcast或者VLAN聚合,当然这些还需要进一步研究
在配置好内网之后,开始配置NAT,此时可以通过抓包看到内网主机是可以向外网主机发送数据包的,但是没有回应,因为外网主机不知道你这个内网IP是从哪里来的,此时需要地址转换来保证通信,将私网IP转换成公网IP,这样才在同一个网段上进行通信。
NAT配置有EASY NAT和BASIC NAT,还有NAPT,这里使用的是EAST NAT,主要是为了分享配置思路,BASIC NAT其实思路也是一样,不过要配置地址池。
如果之前配置了其他类型的NAT,可以使用undo nat outbound这个命令取消之前的NAT配置,然后再使用nat outbound命令重新配置即可
大概思路就是配置acl策略,然后启用nat是指定策略(BASIC和NAPT还要制定地址池)就可以了
[R1]acl basic 2000
[R1-acl-ipv4-basic-2000]rule 5 permit source 192.168.1.0 0.0.0.255
[R1-GigabitEthernet0/1]nat outbound 2000
如果做BASIC或NAPT,参考命令如:
nat address-group 1
address 10.0.0.1 10.0.0.10 //配置地址范围,每发送一个包都换一个,默认递增,会自行重置
...
nat outbound 2000 address-group 1 //指定使用group 1设置的地址范围
nat outbound 2000 address-group 1 no-pat //如果用的BASIC NAT要加上no-pat
本次实验是新手使用HCL进行组网配置的上手实验,对于每一步都写上了自己的理解和一些原理和思路,日后可能会发现错漏和不足,希望高手能指出错误,对学习进步有更多帮助。
参考文章:http://www.xiaoheidiannao.com/HCL-NAT.html
参考文献:《构建中小企业网络》