우분투에서 고정아이피를 설정하는 것이 매번 업그레이드할 때마다 조금씩 달라진다.
우선 디바이스를 찾으려면
$ nmcli d
EVICE TYPE STATE CONNECTION
ens160 ethernet connected netplan-ens160
lo loopback connected (externally) lo
br-540b2daaea6d bridge connected (externally) br-540b2daaea6d
br-ed38bd092326 bridge connected (externally) br-ed38bd092326
docker0 bridge connected (externally) docker0
리스트에서 ens160 를 찾는다.
/etc/netplan에서 기존 야물 파일을 백업해 두고 원본을 편집한다.
$ cd /etc/netplan
$ sudo cp 50-cloud-init.yaml 50-cloud-init.yaml.bak
/etc/netplan/50-cloud-init.yaml.bak
network:
version: 2
ethernets:
ens160:
match:
macaddress: "00:0c:29:73:f2:24"
dhcp4: true
dhcp6: true
set-name: "ens160"
/etc/netplan/50-cloud-init.yaml 을 다음과 같이 수정한다.
dhcp4: no로 수정 addresses부분과 라우트 부분, 그리고 네임서버 리스트를 추가한다.
nㅕetwork:
version: 2
ethernets:
ens160:
match:
macaddress: "00:0c:29:73:f2:24"
dhcp4: no
set-name: "ens160"
addresses:
- 192.168.1.25/24
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
야물화일을 설정에 적용한다. 다음과 같이 에러가 나면 에러메시지에 따라 링크를 걸거나 네트워크를 새로 시작하거나 재부팅한다. 주로 에러나 나는 경우는 2칸 띄어쓰기를 하지 않았을 때 발생했다. 규칙에 맞게 스페이스도 정확하게 맞추어야 한다.
$sudo netplan apply
systemd-networkd is not running, output might be incomplete.
Failed to reload network settings: Unit dbus-org.freedesktop.network1.service not found.
Falling back to a hard restart of systemd-networkd.service
$ sudo ln -s /lib/systemd/system/systemd-networkd.service /etc/systemd/system/dbus-org.freedesktop.network1.service
sudo systemctl status systemd-networkd
sudo systemctl start systemd-networkd
ping으로 네트워크를 확인해 본다.
sudo netplan apply해서 아래와 같은 메시지를 받는다면 macaddress가 잘못되었다는 메시지다.
ifconfig로 확인해서 ether 해당주소로 설정한 다음 다시 적용해 본다.
[]
Cannot find unique matching interface for ens160
서버가 아닌 데스크탑이라면 GUI 로 하는 방법이 그래도 편안하고 안정적이다.
IPv4 탭을 클릭한후 Manual 라디오버튼 선택한 후
IpAddress, Netmask, Gateway를 입력
DNS 8.8.8.8, 8.8.4.4
Route address: 0.0.0.0
Netmask: 0.0.0.0
Gateway: 192.168.1.1
IPv6는 Disable로 한다.
그리고 Apply
