Technical Tip: How to route traffic from one VDOM to another one using the inter-VDOM link connection
| Description | This article describes how to forward the traffic from one VDOM to another one using the inter-VDOM link connection. |
| Scope | Requirements and prerequisites: Make sure VDOMs are enabled. See general configurations for instructions on how to enable Multi-VDOM mode.
Diagram:
|
| Solution | Step 1: Configure the inter-VDOM link.
Configure the Inter-VDOM link from GLOBAL using the web-based manager or the CLI:
Step 2: Configure the IP addresses for each VDOM:
Step 3: Verify connectivity between these two points:
config vdom edit SERVERS execute ping 192.168.100.1 <----- The IP of the root VDOM. PING 192.168.100.1 (192.168.100.1): 56 data bytes 64 bytes from 192.168.100.1: icmp_seq=0 ttl=255 time=0.1 ms ^C --- 192.168.100.1 ping statistics --- 1 packets transmitted, 1 packets received, 0% packet loss round-trip min/avg/max = 0.1/0.1/0.1 ms
The presence of virtual interfaces is one of the key differences between inter-VDOM links and regular interfaces.
Note: Half or full-numbered interfaces are required for NAT. Either SNAT or DNAT as an IP number is needed on both ends to translate between.
Step 4: Define the Inter-VDOM routing and firewall policies on each VDOM to allow the traffic. The default gateway for the Internal VDOM communication will be the External VDOM (VDOM root in this example).
Configure the static route by using the following command:
config vdom edit SERVERS config router static edit 1 set gateway 192.168.100.1 set device "VDOM_link1" set dst 0.0.0.0/0 next end
Configure the policy using the following command:
config firewall policy edit 1 set name "SRV2INT" set uuid 7c34242c-5ff9-51ef-c915-84ce7d2213f2 set srcintf "port2" set dstintf "VDOM_link1" set action accept set srcaddr "10.222.0.0/20" set dstaddr "all" set schedule "always" set service "ALL" next end
External VDOM (root): Configure the static route using the following command:
config vdom edit root config router static edit 2 set dst 10.222.0.0/20 <----- Servers subnet. set device VDOM_link0 set gateway 192.168.100.2 end
Configure the Policy using the following command:
config firewall policy edit 1 set name "SRV_SUB" set uuid c3b04978-5ffb-51ef-b826-1b22e711c8a8 set srcintf "VDOM_link0" <----- VDOM interface. set dstintf "port1" <----- WAN Interface. set action accept set srcaddr "10.222.0.0/20" set dstaddr "all" set schedule "always" set service "ALL" set nat enable next end
Step 4: Verify connectivity from the Windows Server:
Sniffer on the SERVERS VDOM:
2026-02-23 16:03:42.880590 port2 in 10.222.3.251 -> 54.151.118.105: icmp: echo request 2026-02-23 16:03:43.088405 port1 in 54.151.118.105 -> 10.47.4.206: icmp: echo reply
Debug flow on the SERVERS VDOM:
The ICMP echo request arrives at the SERVERS VDOM:
The ICMP echo request arrives at the root VDOM:
id=65308 trace_id=52 func=print_pkt_detail line=5872 msg="vd-root:0 received a packet(proto=1, 10.222.3.251:4->54.151.118.105:2048) tun_id=0.0.0.0 from VDOM_link0. type=8, code=0, id=4, seq=0."
The ICMP echo reply arrives at the root VDOM:
id=65308 trace_id=53 func=print_pkt_detail line=5872 msg="vd-root:0 received a packet(proto=1, 54.151.118.105:60421->10.47.4.206:0) tun_id=0.0.0.0 from port1. type=0, code=0, id=60421, seq=0."
The ICMP echo reply arrives at the SERVERS VDOM:
id=65308 trace_id=54 func=print_pkt_detail line=5872 msg="vd-SERVERS:0 received a packet(proto=1, 54.151.118.105:4->10.222.3.251:0) tun_id=0.0.0.0 from VDOM_link1. type=0, code=0, id=4, seq=0." |




