시스템 호스트네임 관리
리눅스 시스템에서 호스트네임은 시스템을 네트워크 상에서 식별하는 중요한 요소이다. 호스트네임은 네트워크 통신에서 다른 컴퓨터와의 연결 및 식별에 사용된다.
호스트네임 설정
hostnamectl
명령어는 시스템의 호스트네임을 설정하거나 변경하는 데 사용된다. 단순히 시스템의 이름을 설정하는 것 이상으로, 이 명령어는 시스템이 재부팅되더라도 설정된 호스트네임을 유지하게 하며, 네트워크 상에서의 시스템 정체성을 확립한다.
새로운 호스트네임을 설정하려면 다음과 같은 명령어를 사용한다.
sudo hostnamectl set-hostname new-hostname
이 명령어를 실행하면, 시스템의 호스트네임이 new-hostname
으로 변경된다. 이 변경 사항은 즉시 적용되며, 시스템의 네트워크 식별자 역할을 하게 된다.
호스트네임 확인
현재 시스템의 호스트네임을 확인하려면 다음 명령어를 사용한다:
hostnamectl
결과:
Static hostname: myserver
Icon name: computer-vm
Chassis: vm
Machine ID: 2d7d8c83f35d453da82706223b9e0e76
Boot ID: 765d8e8bff2d4ec68a435dd8cdd6a848
Virtualization: kvm
Operating System: Ubuntu 20.04 LTS
Kernel: Linux 5.4.0-73-generic
Architecture: x86-64
- Static hostname: 시스템의 정적 호스트네임. 시스템 재부팅 후에도 유지된다.
- Icon name: 시스템의 아이콘 이름. 그래픽 사용자 인터페이스에서 시스템을 나타내는 아이콘의 이름이다.
- Chassis: 시스템의 유형. 예를 들어,
vm
(가상 머신),desktop
,laptop
,server
등. - Machine ID: 시스템의 고유 식별자. UUID 형식으로 제공되며, 시스템을 고유하게 식별하는 데 사용된다.
- Boot ID: 현재 부팅 세션의 고유 식별자. 시스템이 부팅할 때마다 변경된다.
- Virtualization: 시스템의 가상화 상태. 예를 들어,
kvm
,docker
,lxc
등. - Operating System: 현재 운영 체제의 이름과 버전.
- Kernel: 현재 사용 중인 리눅스 커널의 버전.
- Architecture: 시스템의 하드웨어 아키텍처. 예를 들어,
x86-64
는 64비트 x86 아키텍처를 의미한다.
로컬 DNS
호스트네임이 설정되었다면, 네트워크 상에서 특정 호스트네임과 IP 주소의 매핑을 관리하는 것이 중요하다. 이를 위해 리눅스 시스템에서는 /etc/hosts
파일을 사용한다.
/etc/hosts
파일
/etc/hosts
파일은 IP 주소와 호스트네임의 매핑을 저장하는 파일로, 시스템이 도메인 이름을 해석할 때 가장 먼저 참조한다. 이는 외부 DNS 서버를 사용하기 전에, 로컬에서 설정된 매핑을 우선적으로 사용하게 해 준다.
/etc/hosts
파일의 형식
이 파일은 각 줄에 IP 주소와 해당 호스트네임이 나열되어 있다. 기본 형식은 다음과 같다:
IP_address hostname alias(optional)
예시:
127.0.0.1 localhost
192.168.1.10 myserver.local myserver
127.0.0.1 localhost
: 로컬 루프백 주소로, 이 줄은 시스템이 자신을 가리킬 때 사용된다.- 커스텀 호스트: 네트워크 내에서 특정 IP와 호스트네임의 매핑을 추가로 설정할 수 있다.
728x90
'CS' 카테고리의 다른 글
RAID(Redundant Array of Inexpensive Disks) (0) | 2024.10.01 |
---|---|
[Linux] 파일 시스템(/etc/fstab) (0) | 2024.08.26 |
[Linux] 스왑 공간 (0) | 2024.08.26 |
[CS] Blocking I/O & Non-Blocking I/O (0) | 2024.08.12 |
[CS] 스레드의 종류 (0) | 2024.08.12 |