ubuntu에서 netplan을 이용한 네트워크 설정 SW

집에서 NAS로 사용하고 있는 ubuntu 18.04 서버를 20.04으로 업데이트 했는데, 네트워크 설정 부분이 많이 바뀌었네요.
업데이트 직후는 별 문제 없었지만 kernel module을 재설치하고 설정 파일을 만지다 보니 network이 안잡혀서 당황했습니다.
사실 netplan은 이전 버전인 18.04에서도 사용되고 있었는데, 점점 ubuntu의 설정이 systemd에 친화적으로 바뀌고 있네요.

수십년간 linux/unix에서는 /etc/network/interfaces 를 이용해서 network을 설정했습니다. 하지만 이러한 설정이 cloud 배포라던가, wireless 환경에서 공유기 암호를 넣는다던가 하는 설정에는 점점 더 적합하지 않습니다. netplan은 사용자의 환경에 맞추어서 backend renderer를 NetworkManager나 systemd 를 지정하게 해서 network 설정을 추상화 합니다. 최근 추세에 맞추어서 설정 파일도 yaml이고요.


netplan으로 네트워크를 설정하는 방법은 예제에 있는 것처럼 다음과 같이 설정하면 됩니다.
1. /etc/netplan에 임의의 설정 파일 추가 (01-netcfg.yaml)
2. network interface 이름 확인 (ifconfig -a나 ip -a)
3. 다음과 같이 설정 파일 추가
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 10.10.10.2/24
gateway4: 10.10.10.1
nameservers:
addresses: [10.10.10.1, 1.1.1.1]

여기서 network interface가 enp3s0이고, address, gateway, name server는 적절하게 수정하면 됩니다.