Categories
Computer Network

우분투 20.04에서 호스트네임 변경하기

1. 호스트네임 확인하기

hostname 명령으로 호스트네임을 확인한다.

hostname

이 명령은 호스트네임만 출력한다. 커널, 아키텍처 등 부가적인 정보를 확인할 때는 hostnamectl 명령을 사용한다.

hostnamectl

2. 임시로 호스트네임 변경하기

호스트네임을 임시로 변경해 보자.

hostname xtmci.com

위 명령은 호스트네임을 xtmci.com 으로 변경한다. 임시로 변경한 것이므로 시스템을 재시작하면 이전 호스트네임으로 돌아간다.

3. 유지되는 호스트네임으로 변경하기

변경한 호스트네임이 시스템 부팅 후에도 유지되도록 해 보자.

/etc/hostname 파일을 연다.

sudo vi /etc/hostname

이 파일에는 현재 호스트네임이 기록되어 있다.

oldname.com

이것을 원하는 호스트네임으로 변경한다.

xtmci.com

파일을 저장하고 편집기를 닫는다.

시스템을 재부팅한다.

sudo shutdown -r 0

4. 재부팅 없이 호스트네임 변경하기

시스템을 재부팅하지 않고 계속 유지되는 호스트네임으로 변경하는 방법도 있다. hostnamectl 명령을 사용하면 된다.

hostnamectl set-hostname xtmci.com

위 명령은 호스트네임을 xtmci.com 으로 변경한다. 해당 호스트네임은 시스템을 재부팅해도 계속 유지된다.

Categories
Computer Network

우분투 서버 20.04를 활용한 유선 공유기 만들기

랜카드가 3개 장착된 우분투 서버를 유선 공유기로 만드는 방법을 알아보자.

1. 네크워크 인터페이스 구성

네크워크 구성 파일을 연다.

sudo vi /etc/netplan/00-installer-config.yaml

파일에 아래와 같은 내용을 입력한다.

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:    # 첫번째 랜카드. 인터넷에 직접 연결된다.
      dhcp4: true
    enp4s0:    # 두번째 랜카드.
      dhcp4: false
      addresses:
      - 192.168.0.1/24
    enp5s0:    # 세번째 랜카드.
      dhcp4: false
      addresses:
      - 192.168.1.1/24

enp3s0, enp4s0, enp5s0 등의 네트워크 인터페이스 이름은 네크워크 환경에 따라 다를 수 있다.

파일을 저장하고 편집기를 닫는다.

구성 내용을 시스템에 적용한다.

sudo netplan apply

2. DHCP 서버의 설치와 구성

DHCP 서버 패키지를 설치한다.

sudo apt install isc-dhcp-server

시스템에 네트워크 인터페이스가 2개 이상이므로 바인딩이 필요하다. /etc/default/isc-dhcp-server 파일을 연다.

sudo vi /etc/default/isc-dhcp-server

아래와 같은 내용으로 작성한다.

INTERFACESv4="enp4s0 enp5s0"    # 두번째와 세번째 랜카드.
INTERFACESv6=""

DHCP 서버의 메인 구성 파일을 연다.

sudo vi /etc/dhcp/dhcpd.conf

아래와 같은 내용을 입력한다.

default-lease-time 600;    # IP 주소 임대 시간 (초).
max-lease-time 7200;    # IP 주소 임대 시간의 최대값.
option domain-name-servers 8.8.8.8, 8.8.4.4;    # DNS 서버 주소.

subnet 192.168.0.0 netmask 255.255.255.0 {
  range 192.168.0.201 192.168.0.220;    # 임대할 IP 주소의 범위.
  option routers 192.168.0.1;    # 게이트웨이 주소. 두번째 랜카드의 IP 주소이다.
}

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.201 192.168.1.220;    # 임대할 IP 주소의 범위.
  option routers 192.168.1.1;    # 게이트웨이 주소. 세번째 랜카드의 IP 주소이다.
}

파일을 저장하고 편집기를 닫는다.

DHCP 서버를 재시작한다.

sudo systemctl restart isc-dhcp-server

3. 인터넷 연결 공유 구성

인터넷 연결 공유를 위한 1단계 작업은 IP 포워딩 활성화이다.

시스템에서 IP 포워딩이 가능하도록 한다.

sudo sysctl -w net.ipv4.ip_forward=1

2단계 작업은 iptables 명령으로 FILTER 테이블과 NAT 테이블을 구성하는 것이다.

FILTER 테이블의 모든 체인을 초기화한다.

sudo iptables -F

NAT 테이블의 모든 체인을 초기화한다.

sudo iptables -t nat -F

NAT 테이블에 IP 매스커레이딩을 적용한다.

iptables -t nat -A POSTROUTING -o enp3s0 -j MASQUERADE

여기서 enp3s0 은 인터넷에 직접 연결된 랜카드의 이름이다.

4. 테스트

우분투 서버를 활용한 유선 공유기가 완성되었다.

다른 PC 나 노트북의 랜 포트를 우분투 서버의 랜 포트와 연결한다. 각각의 PC 와 노트북은 DHCP 서버를 통해 자동으로 IP 주소를 할당받도록 구성되어야 한다. 각각의 장치들에서 인터넷 연결이 가능한지 확인해 보자.

Categories
Linux

우분투 리눅스에서 USB 3.0 포트가 인식되지 않는 문제 해결 방법

우분투에서 USB 3.0 포트가 인식되지 않을 때 해결 방법을 알아보자.

/etc/default/grub 파일을 연다.

sudo vi /etc/default/grub

아래 내용의 줄을 찾는다.

GRUB_CMDLINE_LINUX=””

이 줄을 아래와 같이 수정한다.

GRUB_CMDLINE_LINUX=”iommu=soft”

여기서 iommu 는 입출력 메모리 관리 장치 (Input-Output Memory Management Unit) 를 의미한다.

파일을 저장하고 편집기를 닫는다.

grub 구성 파일을 생성한다.

sudo update-grub

시스템을 재부팅한다.

sudo shutdown -r 0

Categories
iPXE

iPXE 부팅을 위한 CD/DVD 와 USB 드라이브 만들기

iPXE 로 부팅할 수 있는 CD/DVD 와 USB 드라이브를 만드는 방법을 알아보자.

1. iPXE 소스 파일 설치

git 명령으로 iPXE 소스 파일을 설치한다.

git clone git://git.ipxe.org/ipxe.git

2. iPXE 부팅 CD/DVD 만들기

git 명령을 실행한 디렉토리에서 ipxe/src 디렉토리로 이동한다.

cd ipxe/src

ISO 이미지 파일을 컴파일한다.

make bin/ipxe.iso

컴파일된 ipxe.iso 파일을 CD 나 DVD 에 굽는다.

3. iPXE 부팅 USB 드라이브 만들기

git 명령을 실행한 디렉토리에서 ipxe/src 디렉토리로 이동한다.

cd ipxe/src

USB 이미지 파일을 컴파일한다.

make bin/ipxe.usb

dd 명령으로 이미지 파일을 USB 드라이브에 쓴다.

dd if=bin/ipxe.usb of=/dev/sdc

여기서 /dev/sdc 는 USB 드라이브의 장치명이다.

4. 테스트

앞에서 만든 CD/DVD 나 USB 드라이브로 컴퓨터를 부팅한다.

부팅 과정에서 아래와 같은 메시지가 나오면 성공이다.

Press Ctrl-B for the iPXE command line…

이때 Ctrl-B 키를 눌러 보자. 그러면 iPXE 명령 프롬프트가 나타난다.

iPXE>