Ebtables'ta IP-MAC eşleştirme kuralları oluşturmaya çalışıyorum . Mevcut çok az sayıda öğretici ve ilgili soru var [1], ancak belirli bir belirti var.
ÇEVRE: Çok fazla fiziksel ev sahibim var . Her ana bilgisayar birkaç tane ethernet kartına sahiptir, birbirine bağlanmıştır ve köprü için köle olarak kullanılmıştır. Her ana bilgisayarda (kvm, qemu, libvirt) pek çok sanal makine var. Her sanal makine, fiziksel ana bilgisayarının köprüsüne vnet [0-9] + adlı yeni bağlantı noktası üzerinden bağlanır. NAT yok. Ağ bağlantısı iyi çalışır, tüm fiziksel ana bilgisayarlar, tüm sanal makineler de pinglenebilir. Her sanal makinenin kendi IP adresi ve MAC adresi vardır.
SORUN: Sanal makinenin içinde IP adresi başka bir tane ile değiştirilebilir.
ÇÖZÜM ÇÖZÜM: ebtables sitesinde [2] bilinen bir çözüm var, ancak bu çözüm yalnızca bir ana bilgisayar kullanıldığında uygulanabilir. Tüm trafiğe izin verir ve IP’den izin verilenden başka bir MAC’a sahip bir paket varsa, paket bırakılır. Birden fazla ana bilgisayar varsa, mevcut tüm IP-MAC çiftlerinin tüm ana bilgisayarlara kaydedilmesini gerektirir. Ters politika çözümüne ihtiyaç var.
CRAFTED ÇÖZÜM: Ebeveynleri ters şekilde kullanmaya çalıştım. İşte ne denedim bir örnek.
ÖRNEK 1
Bridge table: filter
Bridge chain: INPUT, entries: 2, policy: DROP
-i bond0 -j ACCEPT
-p IPv4 -s 54:52:0:98:d7:b6 --ip-src 192.168.11.122 -j ACCEPT
Bridge chain: FORWARD, entries: 0, policy: ACCEPT
Bridge chain: OUTPUT, entries: 0, policy: ACCEPT
ÖRNEK 2
Bridge table: filter
Bridge chain: INPUT, entries: 0, policy: ACCEPT
Bridge chain: FORWARD, entries: 1, policy: DROP
-p IPv4 -s 54:52:0:98:d7:b6 --ip-src 192.168.11.122 -j ACCEPT
Bridge chain: OUTPUT, entries: 0, policy: ACCEPT
İstediğim şeyin özü, varsayılan DROP ilkesine sahip olmak ve yalnızca verilen ana bilgisayara dağıtılan doğru IP-MAC çifti ile sanal makinelerden gelen trafiğe izin vermektir. Ancak, bu çözümler işe yaramıyor.
SORU: Köprüde trafiğe yalnızca çalışan sanal makinelerin belirtilen IP-MAC çiftleri için izin vermek ve vnet [0-9] + bağlantı noktalarından gelen tüm bilinmeyen IP-MAC çiftlerini bırakmak nasıl?
Cevaplarınız için çok teşekkür ederim.