今天给大家介绍VXLAN的相关内容。本文以华为eNSP模拟器为工具,设计并实现了一个典型的VXLAN的应用场景,并完成了相应的配置。主要是VXLAN应用场景下,在实现网络虚拟化之后用户访问公司外部站点的场景。
本文章属于一篇综合性很强的文章,设计到多种技术场景,主要包括:XXX技术、VXLAN技术、防火墙虚拟系统技术等等。阅读本文,您需要又相当强的网络基础,因此算是一篇网工进阶与云计算网络基础的文章。
推荐阅读文章:
VXLAN详解(一)
VXLAN详解(二)
VXLAN配置实例(一)——VXLAN基本配置
VXLAN配置实例(二)——VXLAN跨子网互通
VXLAN配置实例(三)——VXLAN集中式双活网关
VXLAN配置实例(四)——VXLAN多租户网络隔离
防火墙虚拟化技术详解(上)
防火墙虚拟化技术详解(下)
防火墙虚拟系统互访配置实例
防火墙透明模式下虚拟系统配置实例
一、实验拓扑及目的
实验拓扑如上所示,现在要求数据中心内部PC1能够访问公司外部站点,并且在访问公司外部站点时需要进行防火墙过滤。最终实现PC访问公司外部站点流量走向如下:
二、整体配置思路
(一)配置简介
本实例是公有云数据中心或者是大中型私有云数据中心的网络架构简化版本,基本上还原了在云计算场景下,在构建网络虚拟化环境后用户的上网流程。
本实例与实际的场景下访问公司外部站点差距:一是访问公司外部站点一般是配置NAT,NAT的配置一般在用户虚拟防火墙的内部虚拟接口上配置。二是一般Service Leaf中防火墙要至少两个来配置镜像模式的双击备份,在本实例中并没有配置。
本实例的配置难点在于不同租户之间网络的隔离与路由的设置,初次接触本实例,可能会对本实例中要求的数据包路径而头疼,而之所以可以实现这样的数据包转发流程,一个是因为恰到好处的配制了静态路由,另一个是因为在CE2与FW1之间,配置了XXX实例和虚拟系统。
(二)数据包从PC到CE2
当PC1访问公司外部站点时,首先需要去找自己的网关,在本实例集中式网关的配置场景下,PC1的网关在CE2上,因此PC1访问公司外部站点的数据包首先发给CE2。在CE2上,建立Vbdif接口接受PC1访问公司外部站点的流量,同时创建一个专属于租户A的VXN实例,将Vbdif接口与该VXN实例相绑定,这样就实现了租户之间网络流量的隔离与PC1到网关的数据包转发。
(三)数据包从CE2到防火墙
CE2在收到PC1访问公司外部站点的数据包后,可能基于安全的考虑,需要将该数据包发送给防火墙进行流量过滤。在FW上,为了满足多租户的配置需要,需要配置虚拟系统,为每个需要防火墙功能的用户设置虚拟系统。在CE2收到PC1访问公司外部站点的数据包后,发送到防火墙的转发流程实际上是CE2的VXN实例与防火墙的虚拟系统之间的交互。
(四)数据包在防火墙虚拟系统和根系统之间的传递
当数据包进入到了租户的虚拟系统防火墙后,租户会在这里配置NAT策略与安全策略,然后把数据包传递给防火墙根系统。如果是在多租户的场景下,防火墙的根系统是所有租户公用的,只起到流量转发作用,而起不到流量过滤作用。
(五)数据包从防火墙回到CE2
防火墙根系统上配置有一条静态路由,并且把所有租户访问公司外部站点的数据包交给CE2,但是防火墙根系统与CE2之间的数据包传递不是与租户的VXN实例之间的数据包交互,而是与CE2网络设备之间的数据包交互。
(六)数据包从CE2送到公司外部站点
当CE2收到从防火墙发送过来的访问公司外部站点的数据包,就会将该数据包依照默认路由传递出去。
三、实验配置命令
(一)PC1到CE2 VXN实例相关配置
在CE2设备上,与PC1直接交互的网关Vbdif接口是与租户的VXN实例所绑定的,为了实现数据包从CE2传递给防火墙虚拟系统,因此该用户的VXN实例除了绑定一个Vbdif10以外,还需要额外绑定一个Vbdif20,用以实现用户和防火墙之间的数据包交互。同时,还要配置默认路由 ,将访问公司外部站点的流量发送给防火墙虚拟系统上的对应接口。
CE2上相关配置如下:
ip vxn-instance A
ipv4-family
route-distinguisher 100:1
#
bridge-domain 10
vxlan vni 10
#
bridge-domain 20
vxlan vni 20
#
bridge-domain 30
vxlan vni 30
#
interface Vbdif10
ip binding v*n-instance A
ip address 192.168.10.254 255.255.255.0
#
interface Vbdif20
ip binding v*n-instance A
ip address 192.168.20.2 255.255.255.0
#
ip route-static v*n-instance A 0.0.0.0 0.0.0.0 192.168.20.1
(二)CE2 V*N实例与FW虚拟系统之间相关配置
为了实现本实例中的数据包转发需要,需要将防火墙与CE3之间的G1/0/0接口配置成二层接口,Trunk模式。在防火墙上,创建相关的VLAN并且将对应的VLAN划分给相应的虚拟系统,依次实现数据包上行和下行的区分与网络隔离。
在本实例中,租户的虚拟系统分配了VLAN20,以接受来自于CE2的租户A的流量,相关配置如下所示:
在根系统上:
vsys name A 1
assign vlan 20
在虚拟系统上:
interface Vlanif20
ip binding v*n-instance A
ip address 192.168.20.1 255.255.255.0
service-manage ping permit
ip route-static 0.0.0.0 0.0.0.0 public
ip route-static 192.168.10.0 255.255.255.0 192.168.20.2
注意,一定要在虚拟防火墙上配置前往跟系统的默认路由和数据包回程路由,使得数据包可以正常转发。
(三)FW虚拟系统与根系统之间相关配置
在防火墙根系统收到由虚拟系统发送来的数据包后,需要建立Vlanif接口将数据流量再次发回CE2,对于防火墙而言,对上下行链路的数据包更改了VLAN值,依次实现了网络流量的隔离与引导。防火墙根系统上相关配置如下:
interface Vlanif30
ip address 192.168.30.1 255.255.255.0
service-manage ping permit
ip route-static 0.0.0.0 0.0.0.0 192.168.30.2
ip route-static 192.168.10.0 255.255.255.0 vxn-instance A
注意,与防火墙虚拟系统上配置类似,在防火墙根系统上也要配置默认路由与回程路由,以保证数据包的正常转发。
(四)FW根系统与CE2之间相关配置
在CE2设备上,需要配置Vbdif接口与防火墙的流量进行对接,接受防火墙根系统发送来的数据流量,同时配置默认路由和回程路由,指导数据包转发。CE2相关配置如下:
bridge-domain 30
vxlan vni 30
#
interface Vbdif30
ip address 192.168.30.2 255.255.255.0
ip route-static 0.0.0.0 0.0.0.0 192.168.40.2
ip route-static 192.168.10.0 255.255.255.0 192.168.30.1
四、实验现象
(一)PC1 访问公司外部站点PING测试
(二)PC1 访问公司外部站点TRACERT测试
注:在这里,可能是因为eNSP模拟器的BUG,因此导致了中间的设备没有显示,但是通过计数和抓包,可以判断数据包的转发是按照我们设计的流程进行转发的。
五、附录——相关设备配置相关命令
最后,将本实验所有设备的配置代码附录如下:
(一)AR1
interface GigabitEthernet0/0/0
ip address 10.1.11.1 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.12.1 255.255.255.0
#
interface GigabitEthernet0/0/2
ip address 10.1.13.1 255.255.255.0
#
ospf 1
area 0.0.0.0
network 0.0.0.0 255.255.255.255
(二)AR2
interface GigabitEthernet0/0/0
ip address 192.168.40.2 255.255.255.0
#
interface LoopBack0
ip address 22.22.22.22 255.255.255.0
#
ip route-static 0.0.0.0 0.0.0.0 192.168.40.1
#
user-interface con 0
authentication-mode password
user-interface vty 0 4
user-interface vty 16 20
#
wlan ac
#
return
(三)FW相关配置
根系统:
vsys name A 1
assign vlan 20
#
interface Vlanif20
ip binding v*n-instance A
ip address 192.168.20.1 255.255.255.0
service-manage ping permit
#
interface Vlanif30
ip address 192.168.30.1 255.255.255.0
service-manage ping permit
#
l2tp-group default-lns
#
interface GigabitEthernet0/0/0
undo shutdown
ip binding v*n-instance default
ip address 192.168.0.1 255.255.255.0
alias GE0/METH
#
interface GigabitEthernet1/0/0
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 20 30
#
interface Virtual-if0
ip address 192.168.0.254 255.255.255.0
#
interface Virtual-if1
ip address 192.168.0.1 255.255.255.0
#
firewall zone trust
set priority 85
add interface GigabitEthernet0/0/0
add interface Virtual-if0
#
firewall zone untrust
set priority 5
add interface GigabitEthernet1/0/0
add interface Vlanif30
#
ip route-static 0.0.0.0 0.0.0.0 192.168.30.2
ip route-static 192.168.10.0 255.255.255.0 v*n-instance A
#
security-policy
default action permit
rule name 1
source-zone trust
destination-zone untrust
action permit
#
虚拟系统A:
switch vsys A
#
interface Vlanif20
ip binding v*n-instance A
ip address 192.168.20.1 255.255.255.0
service-manage ping permit
#
interface Virtual-if1
ip address 192.168.0.1 255.255.255.0
#
firewall zone trust
set priority 85
add interface GigabitEthernet1/0/0
add interface Vlanif20
#
firewall zone untrust
set priority 5
add interface Virtual-if1
#
security-policy
default action permit
rule name 1
source-zone trust
destination-zone untrust
action permit
#
ip route-static 0.0.0.0 0.0.0.0 public
ip route-static 192.168.10.0 255.255.255.0 192.168.20.2
(四)CE1
bridge-domain 10
vxlan vni 10
#
interface GE1/0/0
undo portswitch
undo shutdown
ip address 10.1.11.10 255.255.255.0
ospf enable 1 area 0.0.0.0
#
interface GE1/0/1.10 mode l2
encapsulation untag
bridge-domain 10
#
interface GE1/0/2.10 mode l2
encapsulation untag
bridge-domain 10
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
ospf enable 1 area 0.0.0.0
#
interface Nve1
source 1.1.1.1
vni 10 head-end peer-list 2.2.2.2
#
ospf 1
area 0.0.0.0
#
return
(五)CE2
ip v*n-instance A
ipv4-family
route-distinguisher 100:1
#
bridge-domain 10
vxlan vni 10
#
bridge-domain 20
vxlan vni 20
#
bridge-domain 30
vxlan vni 30
#
interface Vbdif10
ip binding v*n-instance A
ip address 192.168.10.254 255.255.255.0
#
interface Vbdif20
ip binding v*n-instance A
ip address 192.168.20.2 255.255.255.0
#
interface Vbdif30
ip address 192.168.30.2 255.255.255.0
#
interface GE1/0/0
undo portswitch
undo shutdown
ip address 10.1.12.2 255.255.255.0
#
interface GE1/0/2
undo portswitch
undo shutdown
ip address 192.168.40.1 255.255.255.0
#
interface GE1/0/3
shutdown
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
interface Nve1
source 2.2.2.2
vni 10 head-end peer-list 1.1.1.1
vni 20 head-end peer-list 3.3.3.3
vni 30 head-end peer-list 3.3.3.3
#
ospf 1
area 0.0.0.0
network 2.2.2.2 0.0.0.0
network 10.1.12.0 0.0.0.255
#
ip route-static 0.0.0.0 0.0.0.0 192.168.40.2
ip route-static 192.168.10.0 255.255.255.0 192.168.30.1
ip route-static v*n-instance A 0.0.0.0 0.0.0.0 192.168.20.1
#
(六)CE3
bridge-domain 20
vxlan vni 20
#
bridge-domain 30
vxlan vni 30
#
interface GE1/0/0
undo portswitch
undo shutdown
ip address 10.1.13.3 255.255.255.0
ospf enable 1 area 0.0.0.0
#
interface GE1/0/1.20 mode l2
encapsulation dot1q vid 20
bridge-domain 20
#
interface GE1/0/1.30 mode l2
encapsulation dot1q vid 30
bridge-domain 30
#
interface LoopBack0
ip address 3.3.3.3 255.255.255.255
ospf enable 1 area 0.0.0.0
#
interface Nve1
source 3.3.3.3
vni 20 head-end peer-list 2.2.2.2
vni 30 head-end peer-list 2.2.2.2
#
ospf 1
area 0.0.0.0
#
实验和配置撰写不易,求点赞、关注!!!有问题也可以评论区直接提问。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200/article/details/119494665