Folosesc openvswitch pentru a oglindi traficul care intră sau iese dintr-o interfață VM. Traficul este reflectat în portul de ieșire și ar putea captura pachetele de pe portul de ieșire.
Am folosit următoarea comandă pentru a crea oglindă
ovs-vsctl add-port br-int vxlan0
-- setați Interfața vxlan0 type=vxlan
options:local_ip= options:remote_ip=
options:key=25 option:dst_port=4789
-- --id=@p obține portul vxlan0 -- --id=@p1 obține portul tap2
-- --id=@m create mirror name=mirr0 select_dst_port=@p1
select_src_port=@p1 output-port=@p -- set bridge br-int mirrors=@m
Oglindirea funcționează bine până când VM este repornit. Dar odată ce VM-ul este repornit, oglindirea nu funcționează. Oglindirea funcționează numai atunci când interfața src este adăugată din nou la oglindă.
Cauza principală este că OVS elimină interfața src a oglinzii în timpul repornirii și nu o adaugă înapoi.
sudo ovs-vsctl list mirror mirr0
select_dst_port : [8d5554bb-e6c0-447c-922c-9fc0227b00b8] select_src_port : [8d5554bb-e6c0-447c-922c-9fc0227b00b8]
După repornire
sudo ovs-vsctl list mirror mirr0
select_dst_port : [] select_src_port : []
Există vreo modalitate de a face ca oglinda OVS să funcționeze în mod persistent în timpul repornirilor.
Versiunea Ubuntu
Descriere: Ubuntu 18.04.5 LTS Lansare: 18.04 Nume de cod: bionic