Aller au contenu principal

28. Configure IPv4 and IPv6 Networking and Hostname Resolution (Demo)


Ubuntu에서 네트워크 설정을 구성하는 방법을 배웁니다. 인터페이스, IP 주소 설정, Netplan을 사용한 영구 변경을 다룹니다.

네트워크 인터페이스 확인

ip link 명령은 이더넷 어댑터, 루프백(lo) 등 시스템의 모든 네트워크 인터페이스를 표시합니다.

IP 주소 확인:

ip addr
# 또는 단축형
ip a

루프백 인터페이스(lo)는 로컬 통신을 처리하고, enp0s3과 같은 물리적 어댑터는 이더넷 장치를 나타냅니다. DOWN 상태의 인터페이스는 IP 주소가 없습니다. 컬러 출력을 위해 -c 플래그 사용:

ip -c addr

인터페이스 활성화

비활성 인터페이스(enp0s8)를 활성화합니다:

sudo ip link set dev enp0s8 up

활성화 후 인터페이스가 자동으로 IPv6 주소를 받을 수 있습니다.

IP 주소 수동 할당

IPv4 주소 할당:

sudo ip addr add 10.0.0.40/24 dev enp0s8

IPv6 주소 할당:

sudo ip addr add fe80::921b:eff:fe3d:abcd/64 dev enp0s8

하나의 인터페이스에 여러 IP 주소를 할당할 수 있습니다.

IP 주소 제거 및 인터페이스 비활성화

sudo ip addr delete fe80::5054:ff:fe1f:8050/64 dev enp0s8
sudo ip link set dev enp0s8 down
ip 명령으로 변경한 내용은 임시적이며 재부팅 후 사라집니다.

Netplan으로 영구 변경

Netplan은 Ubuntu Server에서 /etc/netplan에서 설정을 읽어 하위 레벨 서비스가 시스템을 구성하도록 지시합니다.

현재 설정 확인:

sudo netplan get

설정 파일 목록:

ls /etc/netplan

파일 내용 확인:

sudo cat /etc/netplan/50-cloud-init.yaml

새 Netplan 설정 파일 생성

정적 설정으로 새 파일을 생성합니다. 99 번호를 사용하여 마지막에 적용되도록 합니다:

network:
ethernets:
enp0s8:
dhcp4: false
dhcp6: false
addresses:
- 10.0.0.9/24
- fe80::921b:eff:fe3d:abcd/64
version: 2
YAML 들여쓰기를 정확히 유지하세요. 하이픈(-)은 목록 요소를 나타냅니다.

안전하게 설정 적용:

sudo netplan try

카운트다운이 시작되며 ENTER를 누르지 않으면 자동으로 되돌립니다. 타임아웃 지정:

sudo netplan try --timeout 30

취소하려면 Ctrl+C를 누릅니다.

권한 경고가 나타나면 파일 권한을 조정합니다:

sudo chmod 600 /etc/netplan/99-mysettings.yaml

Netplan에 DNS 및 라우트 추가

network:
ethernets:
enp0s8:
dhcp4: false
dhcp6: false
addresses:
- 10.0.0.9/24
- fe80::921b:eff:fe3d:abcd/64
nameservers:
addresses:
- 8.8.4.4
- 8.8.8.8
routes:
- to: 192.168.0.0/24
via: 10.0.0.100
- to: default
via: 10.0.0.1
version: 2
  • nameservers: DNS 서버 지정
  • routes: 특정 네트워크 경로 및 기본 게이트웨이 정의

설정 적용:

sudo netplan try

라우트 확인:

ip route

DNS 확인:

resolvectl status

전역 DNS 설정

/etc/systemd/resolved.conf 편집:

DNS=1.1.1.1 9.9.9.9

서비스 재시작:

sudo systemctl restart systemd-resolved.service

확인:

resolvectl status
resolvectl dns

로컬 호스트명 해석 설정

/etc/hosts 편집:

127.0.123.123 dbserver

테스트:

ping dbserver

복잡한 호스트명 매핑:

1.2.3.4 example.com

추가 자료

매뉴얼 페이지 참조:

man netplan

/address 또는 /default routes로 검색 후 "n"으로 탐색합니다.

예제 설정 확인:

# DHCP 설정
cat /usr/share/doc/netplan/examples/dhcp.yaml
# 정적 설정
cat /usr/share/doc/netplan/examples/static.yaml

정리

이 실습에서는 ip 명령으로 네트워크 설정을 확인/수정하고, Netplan으로 영구 변경을 구현했습니다. IPv4/IPv6 주소 설정, DNS 설정, 커스텀 라우트 정의, /etc/hosts를 통한 로컬 호스트명 매핑을 다뤘습니다.