Debian Server Network Setup
Debian Network - Server Interface Setup
As of Debian 10 (Buster) Debian still by default uses this interface Setup. It can be setup to use netplan inface.
Ubuntu (as of version 14.04) defaults to Predictable Network Interface Names, also see Systemd Docs. I have no problem with this. In any case, you should always check dev names and not assume names, such as “eth0”
To check available interfaces and names use: ip link
, or the more verbose ip a
.
The units 4 main port will be setup to look like a router with 1 WAN port and 3 LAN port. The WAN port will be setup on NIC1 with the LAN ports 1-3 will be on bridged NIC2-4.
Ensure the bridge utilities are loaded: sudo apt install bridge-utils
.
Edit the network configuration file: /etc/network/interfaces
as follows:
The following is a list of some stanza not used and why:
Note:
- Use
ip a
andip r
to analyse current network configuration - Use
sudo journalctl -xeu networking
to check any errors on networking
References:
- NetworkConfiguration see section on Bridging
Network - Netplan Setup
See the Netplan configuration below:
''sudo vim /etc/netplan/network.yaml''
It is important that the network/interfaces method is disable or strange difficult to diagnose network affect may happen. Basically ensure that all items in file /etc/network/interfaces are commented out. For example:
ipv6 Hurricane Electric Setup notes
To create and edit the service: sudo systemctl edit –force –full ipv6_start.service
, man systemctl
and search for
- The final command is used to enable the command to run at start-up:
sudo systemctl enable ipv6_start.service
. - This also needs to be performed after each time netplan apply is used:
sudo systemctl start ipv6_start.service
.
Router Configuration Network Setup
When I initially setup the router I want to use a different network setting. The following is my basic setup netplan yaml file.
''sudo vim /etc/netplan/50-cloud-init.yaml''
Currently Ubuntu (20.04) defaults to netplan.io, where as Debian 10 does not. So in Debian the /etc/network/interfaces
need to be disabled, if using netplan. Where as in Ubuntu the auto configuration needs to be disabled.
I am using Debian 12 now and am moving back to /etc/network/interfaces for network configuration. As the DHCP and DNS server now run in a VM/Docker containers, this simplifies settings on the main router functions.
I wrote 2 scripts to switch between configuration:
Use sudo bash tononrouter.sh
to move to non router configuration.
Use sudo bash tonrouter.sh
to move to non router configuration.
VLAN Info
My ISP states that its setup uses VLAN ID=0. This is a bit ambiguous, does this mean VLAN 801.1q is not used, or priority tagging 801.1p is used, which uses the full VLAN tag frame and has an effective VLAN ID = 0, but is referred to as a priority tag not VLAN? The general online documentation on this matter is vague too. Look's like an experiment to see what works is the only option: 1. Ignore 801.q VLAN entirely, and 2. Attempt too use VLAN priority tagging.
Load the vlan module: sudo apt install vlan
.
I tried a number of different configurations of VLAN using for example ip link add add link eno1 name eno1.1 vlan id 1
in the systemctl pppoe.service
configuration. I found that my ISP did not seem to need the VLAN defined, so I have not used, and not investigated further.
Some useful links:
- Wikipedia IEEE 802.1Q, IEEE P802.1p
- This one talks about reliable network target with systemdRunning Services After the Network is up.