CentOS 초기 네트워크 설정
CentOS 초기 네트워크 설정에 대해 간단히 정리해 보았다.
・호스트명 설정
hostnamectl set-hostname 호스트명 |
・호스트명 확인
nmcli general hostname |
예) 호스트명을 hello로 했을 경우
아래와 같이 호스트명을 hello로 지정한다.
hostnamectl set-hostname hello |
nmcli general hostname를 쳐보면 아래와 같이 hello로 호스트명이 지정된 것을 확인할 수가 있다.
hello |
・systemctl을 재기동시켜서 호스트명을 적용
적용이 안되었을 경우엔 아래 커멘드로 systemctl을 재기동시켜서 호스트명을 적용시킨다.
systemctl restart systemd-hostnamed |
디바이스의 설정이나 확인을 할 때는 nmcli커맨드를 이용할 수 있다.
nmcli(Network Manager command-line)는 nmtui와 같이, Network Manager와 통신을 위해 너트워크 설정을 하는 툴이다.
nmcli는 mtui와 같은 기능을 제공한다고 하지만, 구글링을 했을 때 nmcli가 흔하게 쓰이기도 했고,
보다 상세한 정보를 알고 싶거나 네트워크 설정을 변경하는 스크립트 등을 작성할 경우에 nmcli를 쓰는 것이 좋다고 한다.
단 설정 확인시에는 유저 권한은 상관 없으나 변경시에는 root권한이 필요하므로 꼭 sudo를 붙여서 커맨드를 실행한다.
・디바이스 확인
nmcli device |
예) nmcli device를 쳐보았을 때 아래와 같이 디바이스를 확인할 수 있다.
※줄여서 nmcli d로도 확인 가능
lo loopback unmanaged -- |
・자동접속 설정
OS기동시에 자동적으로 네트워크에 접속할 수 있도록 아래와 같은 커맨드를 실행한다.
※no로 설정 시엔 수동으로 네트워크에 접속
nmcli con mod 디바이스명 connection.autoconnect yes |
예) 디바이스 eth0을 자동적으로 네트워크에 접속할 수 있도록 설정
nmcli con mod eth0 connection.autoconnect yes |
・고정 IPv4주소 설정
nmcli connection modify 디바이스명 ipv4.addresses IP주소 |
예) eth0의 고정 IP주소를 192.168.1.1로설정
nmcli connection modify eth0 ipv4.addresses 192.168.1.1/24 |
※줄여서 아래와 같이 실행도 가능
nmcli c mod eth0 ipv4.addresses 192.168.1.1/24 |
・DHCP설정
IP주소를 DHCP설정하는 경우에는 auto로, 고정 IP주소를 할당할 경우에는 manual로 설정한다.
nmcli con mod 디바이스명 ipv4.method 할당방법 |
예) eth0의 IP주소를 DHCP설정하는 경우
nmcli con mod eth0 ipv4.method auto |
예) IP주소를 고정하는 경우
nmcli con mod eth0 ipv4.method manual |
・디폴트 게이트웨이 설정
nmcli connection modify 디바이스명 ipv4.gateway 주소 |
예) eth0의 디폴트 게이트웨이를 10.0.0.1로 설정하는 경우
nmcli connection modify eth0 ipv4.gateway 10.0.0.1 |
・DNS설정
nmcli connection modify 디아비스명 ipv4.dns 주소 nmcli connection modify 디바이스명 ipv4.dns-search 사이트주소 |
예) eth0의 DNS IP주소(8.8.8.8)를 설정
nmcli connection modify eth0 ipv4.dns 8.8.8.8 |
예) eth0의 DNS 사이트 주소를 설정
nmcli connection modify eth0 ipv4.dns-search hogehoge.com |
・DNS설정을 안 할 경우
nmcli connection modify 디바이스명 ipv4.ignore-auto-dns yes |
예) eth0의 DNS설정을 안할 경우
nmcli con mod eth0 ipv4.ignore-auto-dns yes |
vi /etc/resolv.conf |
설정 내용의 확인은 아래 파일에서 확인이 가능
nameserver 8.8.8.8 |
・설정 확인 방법
①NetworkManager를 재기동해서 설정을 반영한다.
systemctl restart NetworkManager |
②인터페이스만을 재기동해서 설정 확인 (처음 안 방법이라 일단 적어봄)
nmcli connection down 디바이스명; nmcli connection up 디바이스명 |
예) eth0을 재기동
nmcli connection down eth0 |
nmcli connection up eth0 |
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1) |
・설정 보기
nmcli device show 디바이스명 |
예) eth0의 설정 보기
nmcli device show eth0 |
IP6.ADDRESS[1]: ip = fe80::20c:29ff:fecd:9c2d/64, gw = :: |
・접속 확인
ip addr show |
예 ) eth0의 접속 확인
# ip addr show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN |
nmcli로 설정한 내용은 CentOS의 경우, /etc/sysconfig/network-scripts/ifcfg-프로파일명에 저장된다.
*참고로 Ubuntu는 /etc/NetworkManager/system-connections/장치명에 저장된다.
나의 경우에는 nmcli커맨드로 열심히 쳐봐도 안되었기에..
(지금 생각해 보니, systemctl restart NetworkManager로 설정 반영을 안해서 인 듯..)
그냥 /etc/sysconfig/network-scripts/ifcfg-xxx로 들어가서 직접 IP주소를 변환해 주었다.
예) vi /etc/sysconfig/network-scripts/ifcfg-eth0에서 확인
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
|
<TMI>
변환 후, 「nmcli connection down 디바이스명; nmcli connection up 디바이스명」 커맨드로 다시 인터페이스를 재기동하려 했으나, 위에서 언급했듯이 잘 안되고 뭔가 렉이 걸렸는 지 작동이 멈춰버려서 취소하고 reboot로 서버를 재기동하니깐 그제서야 설정이 반영되어 있었다.
참고 사이트 (일본어 사이트)
CentOS 7 ネットワーク設定 - Qiita
動作確認環境 仮想環境 VMware Workstation Player 14.1.1 OS Windows 10 Pro 64bit 仮想環境 OS CentOS 7.4 (1708) minimalインストール...
qiita.com
CentOS 7 : 初期設定 : ネットワークの設定 : Server World
# ホスト名設定 [root@localhost ~]# # デバイス確認 [root@localhost ~]# nmcli device DEVICE TYPE STATE CONNECTION eth0 ethernet connected eth0 lo loopback unmanaged -- # 固定IPv4アドレス設定 ⇒ nmcli ~ IPアドレス [root@localhost ~]
www.server-world.info