-
Notifications
You must be signed in to change notification settings - Fork 99
arp.py reply SENDER and TARGET mac address filled as broadcast #57
Comments
Hi javierGL, The sender and target hardware addresses in the ARP header are set inside pyretic's packet module (pyretic/core/packet.py, see arp_packet_gen()), and subsequently in the Ryu packet generation module (pyretic/vendor/ryu/ryu/lib/packet/arp.py, see class arp constructor). We don't set them in Pyretic currently -- there's no "hardware address" field defined in pyretic. But I could imagine adding an additional parameter to the functions involved to do so. It's reasonable to expect the target MACs to be visible on the host ARP table, but is there a reason to want that despite the controller responding to all ARPs? |
Thanks for answering ngsrinivas, If host arp table is populated with broadcast mac address (by arp.py), packets sent from the host are going to be broadcasted/flooded through all ports of the network for example in case of mac_learner module (if you don´t have the mac-port bind you flood and broadcast is then flooded) and you are wasting a lot of bandwidth for traffic not needed. am i missing something or this is the expected behavior ?? It´s very appreciate your help trying to understand better how it works. |
javierGL, you're right that this is indeed the behavior you expect to see To get the arp controller working without flooding, you must modify the Srinivas On Sun, Aug 30, 2015 at 2:23 PM, javierGL [email protected] wrote:
|
I´m interested. I have seen the origin of the problem: in pyretic/vendor/ryu/ryu/lib/packet/arp.py are defined this default values where MAC_Address are the broadcast we see when generating our arp packets: Thanks to your help i have understand source problem, but don´t know how to begin to add a new Header in Pyretic Packet in order to make this values access by modify function (Sender Hardware Addresses and Target Hardware Addresses) --> Very few experience in programming with Python (more Networking background) |
Any help in order to get what would be best way to "make accesible" HW Addresses (inside ARP Header) in Pyretic packet class ??? |
Hello,
I´ve noticed in arp.py that when arp reply packet is generated SENDER and TARGET mac address of ARP Header are filled as broadcast (FF:FF:FF:FF:FF:FF):
Is there a way to fix that (or explain me how pyretic fill this arp Header in order to try to force it myself) in order that mac addresses inside of arp Header are the same as the ones in Ethernet Headers ??. Current behaviour leads to an ip-mac bind in end hosts with mac as broadcast, not the espected one from my side.
Thanks.
The text was updated successfully, but these errors were encountered: