# Rename LAN Connections

## start point

```bash
$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: end0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 52:77:18:93:03:d3 brd ff:ff:ff:ff:ff:ff
    altname enx5277189303d3
3: enp1s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether 9a:5f:ee:af:de:20 brd ff:ff:ff:ff:ff:ff
```

:::warning
`end0` and `enp1s0` are not good for human readability
:::

## search for hardware paths (ID_PATH)

```bash
$ udevadm info /sys/class/net/end0 | grep -E 'ID_NET|ID_PATH'
E: ID_NET_DRIVER=st_gmac
E: ID_NET_NAMING_SCHEME=v257
E: ID_NET_NAME_MAC=enx5277189303d3
E: ID_NET_NAME_ONBOARD=end0
E: ID_PATH=platform-fe010000.ethernet   <---
E: ID_PATH_TAG=platform-fe010000_ethernet
E: ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link
E: ID_NET_NAME=end0
$ udevadm info /sys/class/net/enp1s0 | grep -E 'ID_NET|ID_PATH'
E: ID_NET_DRIVER=r8169
E: ID_NET_NAMING_SCHEME=v257
E: ID_NET_NAME_PATH=enp1s0
E: ID_PATH=platform-3c0000000.pcie-pci-0000:01:00.0   <---
E: ID_PATH_TAG=platform-3c0000000_pcie-pci-0000_01_00_0
E: ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link
E: ID_NET_NAME=enp1s0
```

## create links

### wan / end0 port
```bash
sudo nano /etc/systemd/network/10-wan0.link
```
```
[Match]
Path=platform-fe010000.ethernet

[Link]
Name=wan0
```

### lan / enp1s0 port
```bash
sudo nano /etc/systemd/network/11-lan0.link
```
```
[Match]
Path=platform-3c0000000.pcie-pci-0000:01:00.0

[Link]
Name=lan0
```

### change /etc/netplan/30-ethernets-dhcp.yaml
- rename `end0` to `wan0` and `enp1s0` to `lan0`

## test links
```bash
sudo udevadm test-builtin net_setup_link /sys/class/net/end0 2>&1 | grep -E 'Config file|ID_NET_NAME'
sudo udevadm test-builtin net_setup_link /sys/class/net/enp1s0 2>&1 | grep -E 'Config file|ID_NET_NAME'
```

## reboot
```bash
sudo reboot
```

## test new names
```bash
ip -br link
```
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9