본 글에서는 Ubuntu 18.04.5에서 netplan을 이용한 고정IP설정을 소개합니다.
우분투 18.04를 설치한 후라면 기본적으로 DHCP 설정이 되어있습니다.
이 경우에 IP가 이따금 변경되는 것을 방지하는 등의 목적을 위해 고정IP를 설정해야 합니다.
netplan 설정파일은 /etc/netplan 디렉토리에서 찾을 수 있습니다.
파일이름은 01-network-manager-all.yaml 과 같은 형태로 되어있으며, yaml 문법으로 작성되어있습니다.
아래는 제가 설치한 Ubuntu 18.04.5에서의 기본적인 /etc/netplan/01-network-manager-all.yaml 파일의 내용입니다.
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
기본적인 설정에서 network interface들과 현재 설정된 IP주소를 조회해보겠습니다.
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:65:0e:29 brd ff:ff:ff:ff:ff:ff
inet 192.168.42.133/24 brd 192.168.42.255 scope global dynamic noprefixroute ens33
valid_lft 1794sec preferred_lft 1794sec
inet6 fe80::210c:9b7:654f:33c7/64 scope link noprefixroute
valid_lft forever preferred_lft forever
위의 'ip addr' 명령의 결과에서 현재 IP주소는 192.168.42.133이며,
network interface 이름은 ens33이라는 것을 알 수 있습니다.
이제 이 정보를 가지고 고정IP주소 192.168.42.132로 netplan 설정을 변경해보겠습니다.
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
ethernets:
ens33:
dhcp4: no
addresses: [192.168.42.132/24]
gateway4: 192.168.42.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
설정을 적용하려면 다음과 같이 실행합니다.
$ sudo netplan apply
$
netplan명령이 성공했다면 출력은 없습니다! 잘 작동하는지 확인하면 된다지만 뭔가 허전합니다.
허전함을 달래기 위해 다음의 명령으로 netplan 명령의 사용법을 찾아봅니다.
$ netplan --help
usage: /usr/sbin/netplan [-h] [--debug] ...
Network configuration in YAML
optional arguments:
-h, --help show this help message and exit
--debug Enable debug messages
Available commands:
help Show this help message
apply Apply current netplan config to running system
generate Generate backend specific configuration files from
/etc/netplan/*.yaml
info Show current netplan version and available features
ip Retrieve IP information from the system
try Try to apply a new netplan config to running system, with
automatic rollback
설정을 적용할 때 debug정보를 보려면 다음과 같이 실행합니다.
$ sudo netplan --debug apply
** (generate:5863): DEBUG: 06:10:24.951: Processing input file /etc/netplan/01-network-manager-all.yaml..
** (generate:5863): DEBUG: 06:10:24.951: starting new processing pass
** (generate:5863): DEBUG: 06:10:24.951: We have some netdefs, pass them through a final round of validation
** (generate:5863): DEBUG: 06:10:24.951: ens33: setting default backend to 2
** (generate:5863): DEBUG: 06:10:24.951: Configuration is valid
** (generate:5863): DEBUG: 06:10:24.951: Generating output files..
** (generate:5863): DEBUG: 06:10:24.951: networkd: definition ens33 is not for us (backend 2)
DEBUG:no netplan generated networkd configuration exists
DEBUG:netplan generated NM configuration changed, restarting NM
DEBUG:ens33 not found in {}
DEBUG:Merged config:
network:
bonds: {}
bridges: {}
ethernets:
ens33:
addresses:
- 192.168.42.132/24
dhcp4: false
gateway4: 192.168.42.1
nameservers:
addresses:
- 8.8.8.8
- 8.8.4.4
vlans: {}
wifis: {}
DEBUG:Skipping non-physical interface: lo
DEBUG:device ens33 operstate is up, not changing
DEBUG:{}
DEBUG:netplan triggering .link rules for lo
DEBUG:netplan triggering .link rules for ens33
이상으로 Ubuntu 18.04.5에서 netplan을 이용한 고정IP설정을 소개하였습니다.
즐리눅, 즐프하시기 바랍니다. ^^
감사합니다.
'Linux' 카테고리의 다른 글
bash 스크립트 실행 시 관리자권한 확인하기 (0) | 2022.12.10 |
---|---|
리눅스에 설치된 mongodb 외부접속 허용하기 (0) | 2022.03.07 |