본문 바로가기
A. Development/Free Topic

Ubuntu 20.04 고정 IP 할당 및 NetPlan으로 DNS설정하기

by IMCOMKING 2021. 7. 1.

NetPlan

아마도 Ubuntu 18.04부터는 기존에 /etc/network/interfaces로 ip를 설정하던 방식에서, netplan과 yaml파일로 ip주소를 관리하는 방식으로 변경이 되었다. 따라서 기존에 방식 말고, 아래의 새로운 방식으로 설정해주어야 한다.

설정 방법

ip link : mac address 확인

cd /etc/netplan

sudo cp 01-network-manager-all.yaml 01-network-manager-all.yaml.backup
sudo vim 01-network-manager-all.yaml

 

아래와 같은 형식으로 주소를 입력한다. nameservers는 DNS 서버주소를 의미한다. 
여기서 주의할 점은 띄어쓰기나, 들여쓰기 간격(탭이 아니라 띄어쓰기 2칸씩)이 엄청 까다롭기 때문에 형식을 아주 면밀히 체크해야한다.

 

# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    (자신의 이터넷 이름 ex.enp134s0f0):
      dhcp6: no
      dhcp4: no
      addresses: [10.*.*.*/24]
      gateway4: 10.*.*.1
      nameservers:
        addresses: [10.*.*.*, 10.*.*.*, 8.8.8.8]

sudo netplan apply

  • 바뀐 ip로 ssh 재접속

ip addr show (ip 확인 용)

원격 서버의 ip를 바꾸다 실패했을 때 자동 롤백 시키기

원격 서버에서 고정 ip설정을 하다가 실수할 경우, 다시 ssh접속이 안되기 때문에 직접 서버가 있는 곳까지 가서 수정해야하는 불상사가 발생할 수 있다. 이를 방지하기 위해 다음과 같은 script를 이용해서 3분 뒤에 원래 상태로 rollback을 시키도록 한다.

 

sudo vim rollback.sh
다음 내용을 rollback.sh에 입력
sudo mv 01-network-manager-all.yaml 01-network-manager-all.yaml.failed
sudo mv 01-network-manager-all.yaml.backup 01-network-manager-all.yaml
sudo netplan apply

sudo at now+3 minutes -f rollback.sh

 

-------- 혹은 아래와 같이 CLI로도 가능함 ---------

echo "sudo mv 01-network-manager-all.yaml 01-network-manager-all.yaml.failed" >> rollback.sh
echo "sudo mv 01-network-manager-all.yaml.backup 01-network-manager-all.yaml" >> rollback.sh
echo "sudo netplan apply" >> rollback.sh

sudo at now+3 minutes -f rollback.sh

 

at 사용 방법

https://gregorio78.tistory.com/260

 

기타 이슈

Cloud-init

If your Ubuntu cloud instance is provisioned with cloud-init, you’ll need to disable it.

  • 이 부분은 아마도 aws같은걸 쓸 때만 해당되는 사항으로 보인다.

 

참고 문서

https://junsk1016.github.io/ubuntu/%EC%9A%B0%EB%B6%84%ED%88%AC-%EC%9B%90%EA%B2%A9-%EC%A0%91%EC%86%8D-%EB%A7%8C%EB%93%A4%EA%B8%B0/

https://netplan.io/examples/

https://www.lesstif.com/lpt/ubuntu-netplan-ip-static-ip-config-61899302.html

https://www.linuxtechi.com/assign-static-ip-address-ubuntu-20-04-lts/

https://linuxize.com/post/how-to-configure-static-ip-address-on-ubuntu-20-04/

https://linuxconfig.org/how-to-configure-static-ip-address-on-ubuntu-18-04-bionic-beaver-linux

댓글