SONiC NOS for GNS3 with LLDP, SNMP and SSH access.
1.4K
You can get the base image from https://sonic.software. This one adds LLDP, SNMP and SSH access to be used as a GNS3 appliance. zebra and root users have "zebra" and "root" as password, respectively. Just copy this appliance definition and import it into GNS3. MPLS LDP, BGP, ISIS and OSPF daemons are enabled. Interface eth0 is for management, must be configured with linux commands (ip address add....). Interfaces named "Ethernet..." are data-plane ones, must be configured using SONiC commands (config interface ip add...). All other eth* interfaces are to be ignored.
{
"name": "docker-sonic-lldp",
"category": "router",
"description": "Docker container running SONiC with LLDP, SNMP and SSH daemons for network discovery",
"vendor_name": "jvt911",
"vendor_url": "https://sonic.software",
"product_name": "SONiC LLDP",
"registry_version": 4,
"status": "stable",
"maintainer": "jvt911",
"maintainer_email": "[email protected]",
"usage": "Docker container running SONiC with LLDP, SNMP and SSH daemons for network discovery",
"docker": {
"adapters": 33,
"image": "jvt911/docker-sonic-lldp:latest",
"extra_volumes": [ "/etc/frr", "/etc/ssh", "/etc/sonic", "/etc/supervisor", "/etc/snmp" ],
"custom_adapters": [
{ "adapter_number": 0, "port_name": "eth0" },
{ "adapter_number": 1, "port_name": "Ethernet0" },
{ "adapter_number": 2, "port_name": "Ethernet4" },
{ "adapter_number": 3, "port_name": "Ethernet8" },
{ "adapter_number": 4, "port_name": "Ethernet12" },
{ "adapter_number": 5, "port_name": "Ethernet16" },
{ "adapter_number": 6, "port_name": "Ethernet20" },
{ "adapter_number": 7, "port_name": "Ethernet24" },
{ "adapter_number": 8, "port_name": "Ethernet28" },
{ "adapter_number": 9, "port_name": "Ethernet32" },
{ "adapter_number": 10, "port_name": "Ethernet36" },
{ "adapter_number": 11, "port_name": "Ethernet40" },
{ "adapter_number": 12, "port_name": "Ethernet44" },
{ "adapter_number": 13, "port_name": "Ethernet48" },
{ "adapter_number": 14, "port_name": "Ethernet52" },
{ "adapter_number": 15, "port_name": "Ethernet56" },
{ "adapter_number": 16, "port_name": "Ethernet60" },
{ "adapter_number": 17, "port_name": "Ethernet64" },
{ "adapter_number": 18, "port_name": "Ethernet68" },
{ "adapter_number": 19, "port_name": "Ethernet72" },
{ "adapter_number": 20, "port_name": "Ethernet76" },
{ "adapter_number": 21, "port_name": "Ethernet80" },
{ "adapter_number": 22, "port_name": "Ethernet84" },
{ "adapter_number": 23, "port_name": "Ethernet88" },
{ "adapter_number": 24, "port_name": "Ethernet92" },
{ "adapter_number": 25, "port_name": "Ethernet96" },
{ "adapter_number": 26, "port_name": "Ethernet100" },
{ "adapter_number": 27, "port_name": "Ethernet104" },
{ "adapter_number": 28, "port_name": "Ethernet108" },
{ "adapter_number": 29, "port_name": "Ethernet112" },
{ "adapter_number": 30, "port_name": "Ethernet116" },
{ "adapter_number": 31, "port_name": "Ethernet120" },
{ "adapter_number": 32, "port_name": "Ethernet124" }
]
}
}
On the use of MPLS: As [email protected] noted, to make MPLS work you need to enable MPLS processing in the shared underlying kernel the container runs on. For instance, in Debian-like hosts use:
sudo apt install linux-modules-extra-$(uname -r)
sudo modprobe mpls_router
sudo modprobe mpls_iptunnel
Content type
Image
Digest
sha256:650a8a18e…
Size
243.3 MB
Last updated
12 months ago
docker pull jvt911/docker-sonic-lldp