Two logic switches, one for each network:
()[root@overcloud-controller-0 /]# ovn-nbctl ls-list e5bcc681-9bec-42b7-bedf-12ce8e9611de (neutron-2561f8db-e1c8-4185-9056-0883686a8a53) 0304d31c-f512-43bc-949e-4d45f754082c (neutron-9d4c5e96-bba6-4716-adb2-3d6c2ddd3903)
()[root@overcloud-controller-0 /]# ovn-nbctl show e5bcc681-9bec-42b7-bedf-12ce8e9611de switch e5bcc681-9bec-42b7-bedf-12ce8e9611de (neutron-2561f8db-e1c8-4185-9056-0883686a8a53) (aka infra_external) port 9075cf11-d5e4-4e60-84f8-5dd38ff72833 type: localport addresses: ["fa:16:3e:91:da:cc 172.20.10.70"] port e696d78b-13c4-4781-8bd5-f6a7db16daee type: router router-port: lrp-e696d78b-13c4-4781-8bd5-f6a7db16daee port provnet-2561f8db-e1c8-4185-9056-0883686a8a53 type: localnet tag: 4 addresses: ["unknown"] port 75a72825-0c32-4a86-8896-72b9cbfb6995 addresses: ["fa:16:3e:47:ee:dd 172.20.10.201"] ()[root@overcloud-controller-0 /]# ovn-nbctl show 0304d31c-f512-43bc-949e-4d45f754082c switch 0304d31c-f512-43bc-949e-4d45f754082c (neutron-9d4c5e96-bba6-4716-adb2-3d6c2ddd3903) (aka infra_internal) port b975d1ca-3b33-4177-bbcb-d07439f1638e type: localport addresses: ["fa:16:3e:be:97:a0 192.168.10.10"] port 65a28088-761c-461c-912c-7d0a3781ab6b type: router router-port: lrp-65a28088-761c-461c-912c-7d0a3781ab6b port 12427559-a937-4b50-a64c-aef54a3284d8 addresses: ["fa:16:3e:7c:36:ff 192.168.10.102"]
()[root@overcloud-controller-0 /]# ovn-trace infra_internal 'inport == "12427559-a937-4b50-a64c-aef54a3284d8" && eth.src == fa:16:3e:7c:36:ff && ip4.src == 192.168.10.102 && eth.dst == fa:16:3e:be:97:a0 && ip4.dst == 1.1.1.1' # ip,reg14=0x3,vlan_tci=0x0000,dl_src=fa:16:3e:7c:36:ff,dl_dst=fa:16:3e:be:97:a0,nw_src=192.168.10.102,nw_dst=1.1.1.1,nw_proto=0,nw_tos=0,nw_ecn=0,nw_ttl=0
ingress(dp="infra_internal", inport="124275") --------------------------------------------- 0. ls_in_port_sec_l2 (ovn-northd.c:4516): inport == "124275" && eth.src == {fa:16:3e:7c:36:ff}, priority 50, uuid f869e22a next; 1. ls_in_port_sec_ip (ovn-northd.c:4188): inport == "124275" && eth.src == fa:16:3e:7c:36:ff && ip4.src == {192.168.10.102}, priority 90, uuid ec3f6e49 next; 3. ls_in_pre_acl (ovn-northd.c:4706): ip, priority 100, uuid 8ca99cd5 reg0[0] = 1; next; 5. ls_in_pre_stateful (ovn-northd.c:4895): reg0[0] == 1, priority 100, uuid dd15ba61 ct_next;
ct_next(ct_state=est|trk /* default (use --ct to customize) */) --------------------------------------------------------------- 6. ls_in_acl (ovn-northd.c:5086): (!ct.trk || (!ct.new && ct.est && !ct.rpl && ct_label.blocked == 0)) && (inport == @pg_63bc7fdf_3061_410f_9e82_80278b987928 && ip4), priority 2002, uuid 655e4046 next; 19. ls_in_l2_lkup (ovn-northd.c:6757): eth.dst == fa:16:3e:be:97:a0, priority 50, uuid e74c5d8a outport = "b975d1"; output;
egress(dp="infra_internal", inport="124275", outport="b975d1") -------------------------------------------------------------- 1. ls_out_pre_acl (ovn-northd.c:4708): ip, priority 100, uuid 79c0a63a reg0[0] = 1; next; 2. ls_out_pre_stateful (ovn-northd.c:4897): reg0[0] == 1, priority 100, uuid 1de53e75 ct_next;
ct_next(ct_state=est|trk /* default (use --ct to customize) */) --------------------------------------------------------------- 9. ls_out_port_sec_l2 (ovn-northd.c:4582): outport == "b975d1", priority 50, uuid 2feba137 output; /* output to "b975d1", type "localport" */
So from my physical router, which is the gateway device 172.20.0.254, I obviously just see the ARP's as well, but for completeness:
10:10:05.688409 fa:16:3e:d7:80:3a > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 1.1.1.1 tell 172.20.10.107, length 46 10:10:06.712518 fa:16:3e:d7:80:3a > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 1.1.1.1 tell 172.20.10.107, length 46
$ openstack port list | grep 3a | ee54a5a3-0e4a-419a-9cbe-246d7a143874 | | fa:16:3e:d7:80:3a | ip_address='172.20.10.107', subnet_id='bf21b56a-65c4-49fb-b345-b804c0429167' | N/A |
Two logic switches, one for each network:
()[root@ overcloud- controller- 0 /]# ovn-nbctl ls-list 9bec-42b7- bedf-12ce8e9611 de (neutron- 2561f8db- e1c8-4185- 9056-0883686a8a 53) f512-43bc- 949e-4d45f75408 2c (neutron- 9d4c5e96- bba6-4716- adb2-3d6c2ddd39 03)
e5bcc681-
0304d31c-
()[root@ overcloud- controller- 0 /]# ovn-nbctl show e5bcc681- 9bec-42b7- bedf-12ce8e9611 de 9bec-42b7- bedf-12ce8e9611 de (neutron- 2561f8db- e1c8-4185- 9056-0883686a8a 53) (aka infra_external) d5e4-4e60- 84f8-5dd38ff728 33 13c4-4781- 8bd5-f6a7db16da ee
router- port: lrp-e696d78b- 13c4-4781- 8bd5-f6a7db16da ee 2561f8db- e1c8-4185- 9056-0883686a8a 53 0c32-4a86- 8896-72b9cbfb69 95 overcloud- controller- 0 /]# ovn-nbctl show 0304d31c- f512-43bc- 949e-4d45f75408 2c f512-43bc- 949e-4d45f75408 2c (neutron- 9d4c5e96- bba6-4716- adb2-3d6c2ddd39 03) (aka infra_internal) 3b33-4177- bbcb-d07439f163 8e 761c-461c- 912c-7d0a3781ab 6b
router- port: lrp-65a28088- 761c-461c- 912c-7d0a3781ab 6b a937-4b50- a64c-aef54a3284 d8
switch e5bcc681-
port 9075cf11-
type: localport
addresses: ["fa:16:3e:91:da:cc 172.20.10.70"]
port e696d78b-
type: router
port provnet-
type: localnet
tag: 4
addresses: ["unknown"]
port 75a72825-
addresses: ["fa:16:3e:47:ee:dd 172.20.10.201"]
()[root@
switch 0304d31c-
port b975d1ca-
type: localport
addresses: ["fa:16:3e:be:97:a0 192.168.10.10"]
port 65a28088-
type: router
port 12427559-
addresses: ["fa:16:3e:7c:36:ff 192.168.10.102"]
()[root@ overcloud- controller- 0 /]# ovn-trace infra_internal 'inport == "12427559- a937-4b50- a64c-aef54a3284 d8" && eth.src == fa:16:3e:7c:36:ff && ip4.src == 192.168.10.102 && eth.dst == fa:16:3e:be:97:a0 && ip4.dst == 1.1.1.1' 0x3,vlan_ tci=0x0000, dl_src= fa:16:3e: 7c:36:ff, dl_dst= fa:16:3e: be:97:a0, nw_src= 192.168. 10.102, nw_dst= 1.1.1.1, nw_proto= 0,nw_tos= 0,nw_ecn= 0,nw_ttl= 0
# ip,reg14=
ingress( dp="infra_ internal" , inport="124275") ------- ------- ------- ------- ------- --- c:4516) : inport == "124275" && eth.src == {fa:16: 3e:7c:36: ff}, priority 50, uuid f869e22a c:4188) : inport == "124275" && eth.src == fa:16:3e:7c:36:ff && ip4.src == {192.168.10.102}, priority 90, uuid ec3f6e49 c:4706) : ip, priority 100, uuid 8ca99cd5 c:4895) : reg0[0] == 1, priority 100, uuid dd15ba61
-------
0. ls_in_port_sec_l2 (ovn-northd.
next;
1. ls_in_port_sec_ip (ovn-northd.
next;
3. ls_in_pre_acl (ovn-northd.
reg0[0] = 1;
next;
5. ls_in_pre_stateful (ovn-northd.
ct_next;
ct_next( ct_state= est|trk /* default (use --ct to customize) */) ------- ------- ------- ------- ------- ------- ------- ------- c:5086) : (!ct.trk || (!ct.new && ct.est && !ct.rpl && ct_label.blocked == 0)) && (inport == @pg_63bc7fdf_ 3061_410f_ 9e82_80278b9879 28 && ip4), priority 2002, uuid 655e4046 c:6757) : eth.dst == fa:16:3e:be:97:a0, priority 50, uuid e74c5d8a
-------
6. ls_in_acl (ovn-northd.
next;
19. ls_in_l2_lkup (ovn-northd.
outport = "b975d1";
output;
egress( dp="infra_ internal" , inport="124275", outport="b975d1") ------- ------- ------- ------- ------- ------- ------- ------ c:4708) : ip, priority 100, uuid 79c0a63a c:4897) : reg0[0] == 1, priority 100, uuid 1de53e75
-------
1. ls_out_pre_acl (ovn-northd.
reg0[0] = 1;
next;
2. ls_out_pre_stateful (ovn-northd.
ct_next;
ct_next( ct_state= est|trk /* default (use --ct to customize) */) ------- ------- ------- ------- ------- ------- ------- ------- c:4582) : outport == "b975d1", priority 50, uuid 2feba137
-------
9. ls_out_port_sec_l2 (ovn-northd.
output;
/* output to "b975d1", type "localport" */
So from my physical router, which is the gateway device 172.20.0.254, I obviously just see the ARP's as well, but for completeness:
10:10:05.688409 fa:16:3e:d7:80:3a > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 1.1.1.1 tell 172.20.10.107, length 46
10:10:06.712518 fa:16:3e:d7:80:3a > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Ethernet (len 6), IPv4 (len 4), Request who-has 1.1.1.1 tell 172.20.10.107, length 46
$ openstack port list | grep 3a 0e4a-419a- 9cbe-246d7a1438 74 | | fa:16:3e:d7:80:3a | ip_address= '172.20. 10.107' , subnet_ id='bf21b56a- 65c4-49fb- b345-b804c04291 67' | N/A |
| ee54a5a3-