OpenStack虛擬機DHCP獲取不到IP地址排查


版本:OpenStack Liberty Neutron DVR

 

現象:

1、在虛擬機內部不停地dhclient

2、在虛擬機所屬的計算節點的物理網卡上抓包,發現該虛擬機發出的dhcp廣播包

3、在虛擬機所屬網絡所在的NAT節點(qdhcp所在的節點)的物理網卡上抓包,同樣發現了該虛擬機發出的dhcp廣播包,即在bond1上抓到了包:

    Bridge br-int
        fail_mode: secure
        Port "sg-297691c4-9f"
            tag: 1
            Interface "sg-297691c4-9f"
                type: internal
        Port "tap8a1db903-07"
            tag: 2
            Interface "tap8a1db903-07"
                type: internal
        Port br-int
            Interface br-int
                type: internal
        Port "qr-8d397111-81"
            tag: 1
            Interface "qr-8d397111-81"
                type: internal
        Port int-br-vlan
            Interface int-br-vlan
                type: patch
                options: {peer=phy-br-vlan}
        Port "tap15d024ee-23"
            tag: 1
            Interface "tap15d024ee-23"
                type: internal
    Bridge br-ex
        Port br-ex
            Interface br-ex
                type: internal
        Port "qg-ab607114-19"
            Interface "qg-ab607114-19"
                type: internal
    Bridge br-vlan
        Port br-vlan
            Interface br-vlan
                type: internal
        Port phy-br-vlan
            Interface phy-br-vlan
                type: patch
                options: {peer=int-br-vlan}
        Port "bond1"
            Interface "bond1"
    ovs_version: "2.4.0"

4、但是在qdhcp的網卡tap15d024ee-23抓不到dhcp廣播包,查看各個ovs bridge的流表未發現什么問題,很是奇怪

 

原因:

后來在同事的幫助下,發現這個bond1還被加到了一個linux bridge上:

brctl show
bridge name    bridge id        STP enabled    interfaces
br0        8000.1418774dd6a3    no        em1
br1        8000.90e2ba8465f2    no        bond1

 

分析:

原來這個bond1被加入到linux bridge上時,導致雖然看上去也被綁到br-vlan上,但是實際上並沒有生效,因此導致上層的br-int無法收到dhcp廣播包

 

解決:

將該bond1從linux bridge上解綁掉,然后重新加入到ovs bridge br-vlan上

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM