+| Initialize NAT44 endpoint-dependent mode in circular topology
+| | [Documentation] | Initialization of NAT44 endpoint-dependent mode on DUT1
+| |
+| | Configure inside and outside interfaces
+| | ... | ${dut1} | ${DUT1_${int}1}[0] | ${DUT1_${int}2}[0]
+| | Set NAT44 Address Range
+| | ... | ${dut1} | ${out_net} | ${out_net_end}
+
+# TODO: Remove when 'ip4.Initialize IPv4 forwarding in circular topology' KW
+# adapted to use IP values from variables
+| Initialize IPv4 forwarding for NAT44 in circular topology
+| | [Documentation]
+| | ... | Set IPv4 forwarding for NAT44:
+| | ... | - set interfaces up
+| | ... | - set IP addresses
+| | ... | - set ARP
+| | ... | - create routes
+| |
+| | ${status} | ${value}= | Run Keyword And Ignore Error
+| | ... | Variable Should Exist | ${dut2}
+| | ${dut2_status}= | Set Variable If | '${status}' == 'PASS' | ${True}
+| | ... | ${False}
+| |
+| | Set interfaces in path up
+| |
+| | VPP Interface Set IP Address
+| | ... | ${dut1} | ${DUT1_${int}1}[0] | ${dut1_if1_ip4} | ${dut1_if1_mask}
+| | VPP Interface Set IP Address
+| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${dut1_if2_ip4} | ${dut1_if2_mask}
+| | Run Keyword If | ${dut2_status}
+| | ... | VPP Interface Set IP Address
+| | ... | ${dut2} | ${DUT2_${int}1}[0] | ${dut2_if1_ip4} | ${dut2_if1_mask}
+| | Run Keyword If | ${dut2_status}
+| | ... | VPP Interface Set IP Address
+| | ... | ${dut2} | ${DUT2_${int}2}[0] | ${dut2_if2_ip4} | ${dut2_if2_mask}
+| |
+| | VPP Add IP Neighbor
+| | ... | ${dut1} | ${DUT1_${int}1}[0] | ${tg_if1_ip4} | ${TG_pf1_mac}[0]
+| | Run Keyword If | ${dut2_status}
+| | ... | VPP Add IP Neighbor
+| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${dut2_if1_ip4}
+| | ... | ${DUT2_${int}1_mac}[0]
+| | ... | ELSE | VPP Add IP Neighbor
+| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${tg_if2_ip4} | ${TG_pf2_mac}[0]
+| | Run Keyword If | ${dut2_status}
+| | ... | VPP Add IP Neighbor
+| | ... | ${dut2} | ${DUT2_${int}1}[0] | ${dut1_if1_ip4}
+| | ... | ${DUT1_${int}2_mac}[0]
+| | Run Keyword If | ${dut2_status}
+| | ... | VPP Add IP Neighbor
+| | ... | ${dut2} | ${DUT2_${int}2}[0] | ${tg_if2_ip4}| ${TG_pf2_mac}[0]
+| |
+| | Vpp Route Add
+| | ... | ${dut1} | ${in_net} | ${in_mask} | gateway=${tg_if1_ip4}
+| | ... | interface=${DUT1_${int}1}[0]
+| | Run Keyword If | ${dut2_status}
+| | ... | Vpp Route Add
+| | ... | ${dut1} | ${dest_net} | ${dest_mask} | gateway=${dut2_if1_ip4}
+| | ... | interface=${DUT1_${int}2}[0]
+| | ... | ELSE | Vpp Route Add
+| | ... | ${dut1} | ${dest_net} | ${dest_mask} | gateway=${tg_if2_ip4}
+| | ... | interface=${DUT1_${int}2}[0]
+| | Run Keyword If | ${dut2_status}
+| | ... | Vpp Route Add
+| | ... | ${dut2} | ${dest_net} | ${dest_mask} | gateway=${tg_if2_ip4}
+| | ... | interface=${DUT2_${int}2}[0]
+| | Run Keyword If | ${dut2_status}
+| | ... | Vpp Route Add
+| | ... | ${dut2} | ${out_net} | ${out_mask} | gateway=${dut1_if2_ip4}
+| | ... | interface=${DUT2_${int}1}[0]
+
+# DET44 - NAT44 deterministic
+| Enable DET44 plugin on DUT
+| | [Documentation] | Enable DET44 plugin on DUT.
+| |
+| | ... | *Arguments:*
+| | ... | - node - DUT node to enablr DET44 on.
+| | ... | Type: dictionary
+| | ... | - inside_vrf - Inside VRF ID; default value: 0.
+| | ... | Type: string or integer
+| | ... | - outside_vrf - Outside VRF ID; default value: 0.
+| | ... | Type: string or integer
+| |
+| | ... | *Example:*
+| |
+| | ... | \| Enable DET44 plugin on all DUTs \|
+| |
+| | [Arguments] | ${node} | ${inside_vrf}=${0} | ${outside_vrf}=${0}
+| |
+| | Enable DET44 Plugin
+| | ... | ${node} | inside_vrf=${inside_vrf} | outside_vrf=${outside_vrf}
+
+| Configure DET44 interfaces
+| | [Documentation] | Configure inside and outside interfaces for DET44.
+| |
+| | ... | *Arguments:*
+| | ... | - node - DUT node to set DET44 interfaces on. Type: dictionary
+| | ... | - int_in - Inside interface key. Type: string
+| | ... | - int_out - Outside interface key. Type: string
+| |
+| | ... | *Example:*
+| |
+| | ... | \| Configure DET44 interfaces \| ${nodes['DUT1']} \| port5 \| port6 \|
+| |
+| | [Arguments] | ${node} | ${int_in} | ${int_out}
+| |
+| | Set DET44 Interface | ${dut1} | ${int_in} | is_inside=${True}
+| | Set DET44 Interface | ${dut1} | ${int_out} | is_inside=${False}
+