Netplan을 사용하여 Ubuntu에서 고정 IP 주소 설정하는 방법: 안정적인 네트워킹을 위한 완전 가이드

1. 정적 IP 주소란 무엇인가?

정적 IP 주소 이해

IP 주소는 네트워크에 연결된 각 장치에 할당되는 고유 식별자입니다. 대부분의 환경에서는 DHCP(동적 호스트 구성 프로토콜)를 사용해 IP 주소가 동적으로 할당됩니다. 그러나 특정 사용 사례에서는 정적 IP 주소를 사용하는 것이 유리합니다. 정적 IP 주소는 재연결 후에도 동일한 주소가 장치에 할당되도록 하여 일관되고 예측 가능한 접근을 가능하게 합니다.

정적 IP 주소의 장점

정적 IP 주소를 사용할 때의 주요 장점은 다음과 같습니다.

  • 안정적인 연결 : 재부팅이나 재연결 후에도 동일한 주소가 유지되어 서버, 프린터, 네트워크 스토리지(NAS)와 같은 장치에 안정적으로 접근할 수 있습니다.
  • 간소화된 접근 관리 : 원격 접속 및 포트 포워딩이 쉬워집니다. 예를 들어 SSH나 원격 데스크톱 접속을 설정할 때 일관된 IP 주소를 사용하면 구성 작업이 단순해집니다.
  • 향상된 네트워크 보안 : 정적 IP를 할당함으로써 특정 장치에 대한 접근을 제한할 수 있어 네트워크 보안 관리가 강화됩니다.

2. Ubuntu에서 정적 IP 주소를 구성하기 위한 준비

Ubuntu 버전 확인

정적 IP 주소를 구성하는 절차는 Ubuntu 버전에 따라 다를 수 있습니다. 다음 명령을 사용해 버전을 확인할 수 있습니다:

lsb_release -a

Ubuntu 17.10 이후부터는 Netplan이 네트워크 구성 도구로 도입되었습니다. Netplan은 YAML 기반 설정을 사용해 네트워크 구성을 간결하게 작성할 수 있게 해줍니다.

Netplan 확인 및 설치

Netplan이 설치되어 있는지 확인하려면 다음 명령을 사용합니다:

netplan --version

Netplan이 설치되지 않은 경우 다음 명령으로 설치할 수 있습니다:

sudo apt install netplan.io

이제 정적 IP 주소를 구성할 준비가 되었습니다.

3. Netplan을 사용한 정적 IP 주소 구성

YAML 구성 파일 만들기

Netplan을 사용해 정적 IP 주소를 구성하려면 먼저 구성 파일을 생성합니다. 파일은 일반적으로 /etc/netplan/ 아래에 저장됩니다. 파일 이름은 자유롭게 지정할 수 있지만 99-config.yaml과 같이 숫자 접두사를 사용하는 것이 권장됩니다. 다음 명령으로 구성 파일을 만들고 엽니다:

sudo nano /etc/netplan/99-config.yaml

YAML 파일 편집

다음으로 YAML 파일을 편집해 정적 IP 구성을 정의합니다:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:
      dhcp4: false
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
  • enp3s0는 네트워크 인터페이스 이름입니다. ip addr 명령을 사용해 올바른 인터페이스 이름을 확인하세요.
  • addresses는 원하는 정적 IP 주소와 서브넷 마스크를 지정합니다(예: 192.168.1.100/24).
  • gateway4는 라우터의 IP 주소를 설정합니다.
  • nameservers는 DNS 서버 주소 목록을 지정합니다. 일반적으로 Google DNS(8.8.8.8)와 같은 공개 DNS를 사용합니다.

구성 저장 및 적용

파일을 저장한 후 다음 명령으로 설정을 적용합니다:

sudo netplan apply

이 명령은 네트워크를 재구성하고 정적 IP 주소를 적용합니다.

4. 구성 확인 및 문제 해결

구성 확인 방법

정적 IP가 올바르게 적용되었는지 확인하려면 다음 명령을 실행합니다:

ip addr show enp3s0

이 명령은 enp3s0 인터페이스에 할당된 IP 주소를 표시하여 구성 성공 여부를 확인할 수 있게 해줍니다.

일반적인 오류 및 해결 방법

Indentation Errors
YAML 파일은 올바른 들여쓰기에 크게 의존합니다. 들여쓰기가 잘못되면 오류가 발생합니다. “Error in network definition”과 같은 메시지가 표시되면 공백을 다시 확인하고 올바르게 정렬했는지 점검하세요.

불안정한 네트워크 연결
정적 IP를 적용한 후 네트워크가 불안정해지면 IP 주소 충돌이 흔한 원인입니다. 다른 장치가 동일한 주소를 사용하고 있지 않은지 확인하고 필요하면 주소를 수정하십시오.

5. 고급 사용법: 다중 네트워크 인터페이스 및 브리지 연결

다중 인터페이스 구성

특정 설정에서는 여러 네트워크 인터페이스에 서로 다른 IP 주소를 할당해야 합니다. Netplan은 여러 인터페이스를 동시에 구성할 수 있습니다. 예시:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:
      dhcp4: false
      addresses: [192.168.1.100/24]
    enp4s0:
      dhcp4: false
      addresses: [192.168.2.100/24]

이 구성은 enp3s0enp4s0에 서로 다른 정적 IP 주소를 할당합니다.

VLAN 및 브리지 설정

브리지 연결과 VLAN은 가상 머신 및 컨테이너 환경에서 특히 유용합니다. Netplan을 사용하면 브리지를 쉽게 구성할 수 있습니다. 예시:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
  bridges:
    br0:
      interfaces: [eth0]
      addresses: [192.168.1.50/24]
      gateway4: 192.168.1.1

이 구성은 eth0 인터페이스를 브리지 br0에 연결하고 정적 IP 주소를 할당합니다.

6. 정적 IP 주소 사용 시 중요한 참고 사항

IP 주소 충돌 방지

정적 IP 주소를 할당할 때 다른 장치가 동일한 주소를 사용하고 있지 않은지 확인하십시오. 충돌은 불안정 및 통신 문제를 일으킬 수 있습니다. IP를 할당하기 전에 항상 네트워크 사용 현황을 검토하십시오.

네트워크 구성 확인

서브넷 마스크와 게이트웨이 설정은 네트워크 구조에 따라 달라집니다. 잘못된 서브넷 마스크는 동일 네트워크 내 장치 간 통신을 방해할 수 있습니다. 올바른 값을 위해 라우터 문서나 네트워크 관리자에게 문의하십시오.