SONiC GNS3 configuration documentation

664 views
Skip to first unread message

Dave Houser

unread,
Jun 22, 2021, 8:42:27 AM6/22/21
to sonicproject
Hello,

I am trying to deploy SONiC in GNS3 and set up a simple VLAN with two interfaces. 

I was able to get SONiC deployed in GNS3 with a gns3a file. All I want to do is configure a simple L2 network on a specific VLAN with two interfaces, connect two VPCS, and have them ping each other.


If I do a tcpdump on each interface in SONiC I can see arp who-has packets, but it does not look like the interfaces are set up properly in GNS3.

By default, in GNS3, there are 8 interfaces configured, are all e1000. If I perform a `ip -br addr show` in SONiC I can see eth0-eth8, which will show up or down depending on connecting devices to them. There are 48 other "Ethernet" interfaces which SONiC seems to work with directly. All show "UNKNOWN"

I think SONiC is not working with the correct interfaces :(
Does anyone have notes on how the interfaces should be configured in GNS3?

There do not seem to be many notes or information on how to set up SONiC on GNS3. 
I used this image, and created the gns3a file with these instructions.

What am I doing wrong?


Dave Houser

unread,
Jun 22, 2021, 11:26:28 AM6/22/21
to sonicproject
Think I figured it out, I needed to enable proxy_arp, its disabled by default. I ran the following commands on two interfaces to get this to work
 
    sudo config vlan add 1
    sudo config interface ip remove Ethernet0 10.0.0.0/31
    sudo config interface ip remove Ethernet4 10.0.0.2/31
    sudo config vlan member add -u 1 Ethernet0
    sudo config vlan member add -u 1 Ethernet4
    sudo config vlan proxy_arp 1 enabled
    sudo config save -y

Dave Houser

unread,
Jun 22, 2021, 1:50:01 PM6/22/21
to sonicproject
Actually this all does not make much sense to me.
So proxy_arp REQUIRES the vlan to have an interface IP. If I remove the interface IP, proxy_arp is set back to disabled. 
So it seems there is no way to set up a L2 network without VLAN interfaces for every VLAN. Why? Never had to do this on any other L2 switch.

Dave Houser

unread,
Jun 22, 2021, 2:32:54 PM6/22/21
to sonicproject
Ok figured it out.
Apparently by default SONiC routers are deployed BLOCKING arp requests.... 
I found this command online to show the firewall table of the router - `ebtables --list`
An entry listed was `-p ARP -j Drop`. To remove I used `ebtables --delete FORWARD 2`

This command was NOWHERE in the quick start guide, user manual, or CLI guide. I understand that this is a linux command so I wouldn't expect to find it in the CLI, but I would recommend printing somewhere in the manual or quick start guide some basic SONiC default settings, namely the following:

1) arp is blocked
2) dot1q is blocked
3) All MAC addresses are the same when deploying
4) BGP is configured the same by default.
5) Every interface is configured as a router interface with an IP. 

I am sure there are more, however I wish I knew these facts before starting working on SONiC.
Reply all
Reply to author
Forward
0 new messages