From: Stephen Hemminger <stephen@networkplumber.org>
To: Balaji J <ping2balaji@gmail.com>
Cc: bridge@lists.linux-foundation.org
Subject: Re: [Bridge] Bridge interface not forwarding DHCP-Broadcast
Date: Tue, 13 Dec 2016 09:41:28 -0800 [thread overview]
Message-ID: <20161213094128.3fa3f4a5@xeon-e3> (raw)
In-Reply-To: <CAAtMjxaGCpd_3axCbinnpDpgR+H3DPn9y+cLabodGiytwckc7A@mail.gmail.com>
On Tue, 13 Dec 2016 21:13:43 +0530
Balaji J <ping2balaji@gmail.com> wrote:
> Hi all,
>
> I am trying to setup a bridge with 2 interfaces attached to it in Router-1.
> Interface-1: eth1 ==> EoGRE Tunnel interface(gretap) connecting to another
> Router-2 where DHCP server is running.
> Interface-2: eth2 ==> Trying to use DHCP to assign IP for this eth2
> interface from DHCP-Server running on Router-2.
>
> Basically the setup i am expecting is like:
> (eth2)[Router-1](eth1:100.1.1.1) <----------EoGRE
> Tunnel----->(eth0:100.1.1.254)[Router-2](DHCP-Server)
>
> Following are the setup i did to check the 1st stage to see if the
> dhcp-discover broadcast is going out of Router-1 over EoGRE tunnel or not.
> But i am not able to achieve the same.
>
> Can anyone please let me know what is missing here? Thanks in advance.
>
> Router-1:
> 1) ip link add eogre type gretap local 100.1.1.1 remote 100.1.1.254 ==>
> created gretap with endpoints.
> 2) ip link set eogre up ==> brought the eogre interface up.
> [root@centos]# ifconfig
> eogre Link encap:Ethernet HWaddr 9E:25:FC:54:7F:F2
> inet6 addr: fe80::9c25:fcff:fe54:7ff2/64 Scope:Link
> UP BROADCAST RUNNING MULTICAST MTU:1462 Metric:1
> RX packets:0 errors:0 dropped:0 overruns:0 frame:0
> TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:1000
> RX bytes:0 (0.0 b) TX bytes:492 (492.0 b)
>
> eth1 Link encap:Ethernet HWaddr 08:00:27:3C:FB:14
> inet addr:100.1.1.1 Bcast:0.0.0.0 Mask:255.255.255.0
> inet6 addr: fe80::a00:27ff:fe3c:fb14/64 Scope:Link
> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
> RX packets:13 errors:0 dropped:0 overruns:0 frame:0
> TX packets:40 errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:1000
> RX bytes:1398 (1.3 KiB) TX bytes:4103 (4.0 KiB)
>
> eth2 Link encap:Ethernet HWaddr 08:00:27:5E:7F:83
> BROADCAST MULTICAST MTU:1500 Metric:1
> RX packets:0 errors:0 dropped:0 overruns:0 frame:0
> TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
> collisions:0 txqueuelen:1000
> RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
> 3) brctl addbr br0 ==> created bridge interface
> 4) brctl addif br0 eogre ==> attach eogre interface to bridge
> 5) brctl addif br0 eth2 ==> attach eth2 interface to bridge
> 6) sysctl -w net.ipv6.conf.eth2.disable_ipv6=1 ==> disable ipv6 in eth2
> just to avoid unwanted ipv6 signalling messages from it.
> 7) ifconfig eth2 up ==> eth2 iface up with no IP in it yet.
> 8) ifconfig eogre up ==> eogre iface up
> 9) ifconfig br0 up ==> Bridge up.
> 10) brctl show ==>
> bridge name bridge id STP enabled interfaces
> br0 8000.0800275e7f83 no eogre
>
> eth2
>
> 11) brctl showstp br0
>
> [root@centos-dev ~]# brctl showstp br0
> br0
> bridge id 8000.0800275e7f83
> designated root 8000.0800275e7f83
> root port 0 path cost 0
> max age 19.99 bridge max age
> 19.99
> hello time 1.99 bridge hello time
> 1.99
> forward delay 14.99 bridge forward delay
> 14.99
> ageing time 299.95
> hello timer 0.50 tcn timer
> 0.00
> topology change timer 0.00 gc timer
> 1.50
> hash elasticity 4 hash max 512
> mc last member count 2 mc init query count 2
> mc router 1 mc snooping 1
> mc last member timer 0.99 mc membership timer
> 259.96
> mc querier timer 254.96 mc query interval
> 124.98
> mc response interval 9.99 mc init query interval
> 31.24
> flags
>
>
> eogre (0)
> port id 0000 state
> forwarding
> designated root 8000.0800275e7f83 path cost 100
> designated bridge 8000.0800275e7f83 message age timer
> 0.00
> designated port 8001 forward delay timer
> 0.00
> designated cost 0 hold timer
> 0.00
> mc router 1
> flags
>
> eth2 (0)
> port id 0000 state
> forwarding
> designated root 8000.0800275e7f83 path cost 4
> designated bridge 8000.0800275e7f83 message age timer
> 0.00
> designated port 8002 forward delay timer
> 0.00
> designated cost 0 hold timer
> 0.00
> mc router 1
> flags
>
> 12) dhclient -i eth2 ==> This command triggers a DHCP-DISCOVER
> broadcast(both l2/l3 broadcast destination addressed) from eth2 and
> initiate ip allocation process.
>
> Now if i capture packets in wireshark in eth1+br0+eogre interface of
> Router-1, i don't see the dhcp-discover packet sent from eth2 interface
> going over EoGRE Tunnel to Router-2.
> But the same DHCP-Discover packet i can see if i capture in eth2
> interface(obvious reason).
>
> Is it not like whatever packets coming in or originating from eth2 will be
> bridged to eogre interface using bridge "br0"?
> I am using kernel 2.6 in CentOS
>
> Can someone please help here?
>
> Regards,
> ...Balaji
You can't and shouldn't try to do anything that assigns an IP address
to a device that is a member of a bridge. In your case that is eth2.
The correct thing to do is run DHCP client on the bridge device.
next prev parent reply other threads:[~2016-12-13 17:41 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-13 15:43 [Bridge] Bridge interface not forwarding DHCP-Broadcast Balaji J
2016-12-13 17:41 ` Stephen Hemminger [this message]
2016-12-13 18:15 ` Balaji J
2016-12-13 19:16 ` Stephen Hemminger
2016-12-14 2:03 ` Balaji J
2016-12-14 8:01 ` Srinivas M.A.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161213094128.3fa3f4a5@xeon-e3 \
--to=stephen@networkplumber.org \
--cc=bridge@lists.linux-foundation.org \
--cc=ping2balaji@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox