ubuntu netplan 으로 고정 ip 설정하기(static ip config)

Ubuntu 18 LTS 부터는 Netplan 이 적용되어 설정 방식이 변경됨.


설정

  1. 시스템의 network interface 목록을 확인합니다. 여기에서 wlp5s0 를 고정 IP 로 설정해야 한다고 가정해 보겠습니다.

    $ ls /sys/class/net
    
    
    enp0s31f6  wlp5s0 lo

    또는 ip 명령을 사용해도 됩니다.

    $ ip link
    
    : 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: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
        link/ether 4c:ed:fb:72:a1:36 brd ff:ff:ff:ff:ff:ff
    3: wlp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000
        link/ether 80:c5:f2:60:8f:51 brd ff:ff:ff:ff:ff:ff
  2. netplan 의 설정 파일은 /etc/netplan 폴더에 위치하고 있으며 다음 3가지 설정 파일이 있습니다. 혹시 /etc/netplan 폴더가 없다면 다음 명령으로 생성합니다.

    $ sudo netplan generate
  3. 설정 파일을 편집기로 오픈합니다. Ubuntu 버전에 따라 설정 파일 이름이 다릅니다.

    # Ubuntu 20
    sudo vi /etc/netplan/01-netcfg.yaml
    # Ubuntu 18
    sudo vi /etc/netplan/50-cloud-init.yaml
  4. 일반적으로 파일을 열면 다음과 같이 DHCP 로 설정되어 있습니다.

    network:
      version: 2
      renderer: networkd
      ethernets:
        wlp5s0:
          dhcp4: yes
  5. yaml 의 ethernets  항목에 1번에서 확인한 인터페이스(wlp5s0)  하위에 정적 IP 를 설정하는 설정을 추가합니다.

    /etc/netplan/50-cloud-init.yaml
    network:
        version: 2
        renderer: networkd
        ethernets:
            wlp5s0:
                dhcp4: no 
                addresses: 
    				## 설정할 IP 와 Netmask
    				- 192.168.0.214/24
                gateway4: 192.168.0.1
                nameservers:
                  addresses: [8.8.8.8,168.126.63.1]
                  #  search: [lesstif.com]
    #            optional: true

    고정 IP 설정시 dhcp4: no 를 꼭 추가해야 합니다.

  6. 저장하고 빠져 나옴
  7. 설정 반영

    sudo netplan apply
  8. 설정 반영 확인

    $ ip addr
    $ ip route
  9. network 을 사용하는 명령어(Ex: nslookup)를 사용해서 정상 동작 여부 확인

    $ nslookup google.com

같이 보기

Ref