Skip to main content

Linux as a software Switch / Router Bridge


Network Interfaces
Creating two network interfaces in Linux
sudo ip link add eth0dummy1 type dummy
sudo ip link add eth0dummy2 type dummy
Setting those interfaces up
sudo ip link set up eth0dummy1
sudo ip link set up eth0dummy2
Showing existing interfaces
ip addr list
MAC is assigned to eth0dummy1 and eth0dummy2 interfaces

Bridge
Creating the bridge
sudo brctl addbr dummybridge
Setting the bridge up
sudo ip link set up dummybridge 
Adding interfaces to the bridge
sudo brctl addif dummybridge eth0dummy1 eth0dummy2
Showing existing bridges
sudo brctl show
Showing virtual ports and MAC addresses
sudo brctl showmacs dummybridge
virtual port 1 attached to eth0dummy1 interface MAC and port 2 to eth0dummy2 MAC


Router
Converting the bridge to a router by assigning a L3 address.
sudo ip addr add 172.16.0.1/24 dev dummybridge

Reference

Comments

Popular posts from this blog

Running a docker container in host network namespace

Docker is utilizing network namespaces of Linux to provide the isolation for the containers. However, it is possible to define in which network namespace the container should be running. Hence, we can also get a container running in the host network. docker run --name hostbusybox --network=host busybox Since the above container is running in the host network, the interface of the container can be seen with the following command ip addr list

Hub vs Bridge vs Switch

Hub Layer: Physical Layer Connects network segments (wires) and broadcast traffic (without knowing to know MAC).  Bridge Layer - Data Link Layer Connects two network segments (wires) and forward packets based on the MAC.  Can be a software or a hardware.  Switch Layer - Data Link Layer Multiple bridges are implemented in a switch hence it can forward traffic between more than two network segments based on the MAC.