Bug 1252218

Summary: ovs bond on controller is not seeing dhcp packet
Product: Red Hat OpenStack Reporter: bigswitch <rhosp-bugs-internal>
Component: rhosp-directorAssignee: chris alfonso <calfonso>
Status: CLOSED DUPLICATE QA Contact: yeylon <yeylon>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.0 (Kilo)CC: hbrock, mburns, rhel-osp-director-maint, srevivo
Target Milestone: ---Keywords: ZStream
Target Release: Director   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-11 07:09:41 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description bigswitch 2015-08-11 02:25:27 UTC
Description of problem:
We are using RHOSP7. Following is the problem we found

1. dhcp name space is on overcloud-controller-0
[heat-admin@overcloud-controller-0 ~]$ sudo ip netns

qdhcp-30caeaf5-ef0a-4d36-8e45-8b8e7cbc3a33

[heat-admin@overcloud-controller-0 ~]$ sudo ip netns exec qdhcp-30caeaf5-ef0a-4d36-8e45-8b8e7cbc3a33 ifconfig

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536

        inet 127.0.0.1  netmask 255.0.0.0

        inet6 ::1  prefixlen 128  scopeid 0x10<host>

        loop  txqueuelen 0  (Local Loopback)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 0  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tap2fb0d546-8b: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 1.1.1.2  netmask 255.255.255.0  broadcast 1.1.1.255

        inet6 fe80::f816:3eff:fe16:9a01  prefixlen 64  scopeid 0x20<link>

        ether fa:16:3e:16:9a:01  txqueuelen 0  (Ethernet)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 8  bytes 648 (648.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


2. The ovs bridges on overcloud-controller-0 is as following
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-vsctl show

81f41d74-2d75-4c8a-81ff-e6dfb4462bfe

    Bridge br-ex

        Port "vlan203"

            tag: 203

            Interface "vlan203"

                type: internal

        Port "bond1"

            Interface "eth2"

            Interface "eth3"

        Port br-ex

            Interface br-ex

                type: internal

        Port "vlan202"

            tag: 202

            Interface "vlan202"

                type: internal

        Port "vlan201"

            tag: 201

            Interface "vlan201"

                type: internal

        Port phy-br-ex

            Interface phy-br-ex

                type: patch

                options: {peer=int-br-ex}

        Port "vlan100"

            tag: 100

            Interface "vlan100"

                type: internal

    Bridge br-bond

        Port br-bond

            Interface br-bond

                type: internal

        Port phy-br-bond

            Interface phy-br-bond

                type: patch

                options: {peer=int-br-bond}

    Bridge br-int

        fail_mode: secure

        Port "tap2fb0d546-8b"

            tag: 1

            Interface "tap2fb0d546-8b"

                type: internal

        Port int-br-bond

            Interface int-br-bond

                type: patch

                options: {peer=phy-br-bond}

        Port br-int

            Interface br-int

                type: internal

        Port int-br-ex

            Interface int-br-ex

                type: patch

                options: {peer=phy-br-ex}

    ovs_version: "2.3.1-git3282e51"


3. bond1 looks alright
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-appctl lacp/show bond1

---- bond1 ----

status: active negotiated

sys_id: a0:36:9f:67:d4:a8

sys_priority: 65534

aggregation key: 1

lacp_time: fast



slave: eth2: current attached

port_id: 1

port_priority: 65535

may_enable: true



actor sys_id: a0:36:9f:67:d4:a8

actor sys_priority: 65534

actor port_id: 1

actor port_priority: 65535

actor key: 1

actor state: activity timeout aggregation synchronized collecting distributing



partner sys_id: 5c:16:c7:02:00:01

partner sys_priority: 32768

partner port_id: 37

partner port_priority: 32768

partner key: 3

partner state: activity timeout aggregation synchronized collecting distributing



slave: eth3: current attached

port_id: 2

port_priority: 65535

may_enable: true



actor sys_id: a0:36:9f:67:d4:a8

actor sys_priority: 65534

actor port_id: 2

actor port_priority: 65535

actor key: 1

actor state: activity timeout aggregation synchronized collecting distributing



partner sys_id: 5c:16:c7:02:00:01

partner sys_priority: 32768

partner port_id: 237

partner port_priority: 32768

partner key: 3

partner state: activity timeout aggregation synchronized collecting distributing


4. eth3 of bond1 receives dhcp request
[heat-admin@overcloud-controller-0 ~]$ sudo tcpdump -i eth3 -e -n -v port 67 or port 68

tcpdump: WARNING: eth3: no IPv4 address assigned

tcpdump: listening on eth3, link-type EN10MB (Ethernet), capture size 65535 bytes

17:01:42.006142 fa:16:3e:47:60:d5 > Broadcast, ethertype 802.1Q (0x8100), length 336: vlan 50, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 318)

    0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from fa:16:3e:47:60:d5, length 290, xid 0xe959f348, Flags [none]

  Client-Ethernet-Address fa:16:3e:47:60:d5

  Vendor-rfc1048 Extensions

    Magic Cookie 0x63825363

    DHCP-Message Option 53, length 1: Discover

    Client-ID Option 61, length 7: ether fa:16:3e:47:60:d5

    MSZ Option 57, length 2: 576

    Parameter-Request Option 55, length 9: 

      Subnet-Mask, Default-Gateway, Domain-Name-Server, Hostname

      Domain-Name, MTU, BR, NTP

      Classless-Static-Route

    Vendor-Class Option 60, length 12: "udhcp 1.20.1"

    Hostname Option 12, length 6: "cirros"

17:02:42.073216 fa:16:3e:47:60:d5 > Broadcast, ethertype 802.1Q (0x8100), length 336: vlan 50, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 318)

    0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from fa:16:3e:47:60:d5, length 290, xid 0xe959f348, secs 60, Flags [none]

  Client-Ethernet-Address fa:16:3e:47:60:d5

  Vendor-rfc1048 Extensions

    Magic Cookie 0x63825363

    DHCP-Message Option 53, length 1: Discover

    Client-ID Option 61, length 7: ether fa:16:3e:47:60:d5

    MSZ Option 57, length 2: 576

    Parameter-Request Option 55, length 9: 

      Subnet-Mask, Default-Gateway, Domain-Name-Server, Hostname

      Domain-Name, MTU, BR, NTP

      Classless-Static-Route

    Vendor-Class Option 60, length 12: "udhcp 1.20.1"

    Hostname Option 12, length 6: "cirros"

17:03:42.135464 fa:16:3e:47:60:d5 > Broadcast, ethertype 802.1Q (0x8100), length 336: vlan 50, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 318)

    0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from fa:16:3e:47:60:d5, length 290, xid 0xe959f348, secs 120, Flags [none]

  Client-Ethernet-Address fa:16:3e:47:60:d5

  Vendor-rfc1048 Extensions

    Magic Cookie 0x63825363

    DHCP-Message Option 53, length 1: Discover

    Client-ID Option 61, length 7: ether fa:16:3e:47:60:d5

    MSZ Option 57, length 2: 576

    Parameter-Request Option 55, length 9: 

      Subnet-Mask, Default-Gateway, Domain-Name-Server, Hostname

      Domain-Name, MTU, BR, NTP

      Classless-Static-Route

    Vendor-Class Option 60, length 12: "udhcp 1.20.1"

    Hostname Option 12, length 6: "cirros"



5.  However, at the same time, bond1 is not seeing the above dhcp request

[heat-admin@overcloud-controller-0 ~]$ sudo tcpdump -i bond1 -e -n -v port 67 or port 68

tcpdump: WARNING: bond1: no IPv4 address assigned

tcpdump: listening on bond1, link-type EN10MB (Ethernet), capture size 65535 bytes

^C

0 packets captured

0 packets received by filter


0 packets dropped by kernel



6. of course, dhcp name space is not seeing the dhcp request either

[heat-admin@overcloud-controller-0 ~]$ sudo ip netns exec qdhcp-30caeaf5-ef0a-4d36-8e45-8b8e7cbc3a33 tcpdump -i tap2fb0d546-8b -n -e -v port 67 or port 68

tcpdump: listening on tap2fb0d546-8b, link-type EN10MB (Ethernet), capture size 65535 bytes

^C

0 packets captured

0 packets received by filter


0 packets dropped by kernel




Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 3 Mike Burns 2015-08-11 07:09:41 UTC

*** This bug has been marked as a duplicate of bug 1252219 ***