syurhia 님의 블로그

리눅스 네트워크 설정 본문

IT학습_보안외/리눅스

리눅스 네트워크 설정

syurhia 2026. 6. 12. 20:30

로키 리눅스에서 CLI에서 네트워크 설정을 하는 방법은 3가지가 있다 (더 있을 수도 있는데, 내가 아는 건 이 세 개다)

 

1. /etc/NetworkManager/system-connections 디렉터리에 있는 네트워크 인터페이스의 값 파일을 직접 열어서 수정하기 (잘못 적으면 이상해질 수 있으니 위험하다)

2. nmcli 커맨드를 이용해서 네트워크 인터페이스 값 파일 수정하기 ( 문제가 있으면 에러 뿜어서 안정적인 편 )

3. nmtui 커맨드를 이용해서 네트워크 인터페이스 값 파일 수정하기 ( CLI에서 TUI로 수정 가능 )

 

파일을 수정한 뒤에는 네트워크 인터페이스를 껐다가 켜야한다. 

 

위의 세 가지 방법들을 이미지를 이용해서 하나씩 설명하겠다.

 

참고로 nmcli커맨드의 사용법에 대해 자세히 알고 싶다면 man nmcli를 쳐보면 된다. 


첫 번째 방식부터 보자.

 

일단, 네트워크 인터페이스의 값을 바꾸려면 인터페이스의 이름이 뭔지를 알아야 한다.

"ip link" 또는 "nmcli device"라고 쳐주자. 그러면 그림 1과 같이 네트워크 인터페이스들이 출력된다.

그림 1. NIC 이름

그림 1을 보면 나의 NIC의 이름은 ens160이라고 나와있다.

 

파일을 수정해야 하니, 일단 네트워크 인터페이스들의 값이 모여있는 /etc/NetworkManager/system-connections로 디렉터리를 옮겨주자. 여기는 네트워크 설정들이 보관되어있는 디렉터리이다.

그림 2. ens160의 값이 적힌 파일

그림 2를 보면 ens160.nmconnection이라는 파일이 존재한다. root만 읽고 쓸 수 있는 파일이다. 여기에 값이 적혀 있다. 한 번 nano를 이용해서 파일을 열어보자.

그림 3. ens160.nmconnection 수정

그림 3을 보면 파일을 열어본건데, dns, ip주소등이 적혀 있다. 실제로 바꿀 수 있는가를 확인하고 싶으니 DNS를 수정해보자.

"172.16.233.10"으로 바꾸었다. 바꾼 그림은...없다. 

수정을 했으니, 이제 DNS값이 바뀌었는지 확인해보겠다. nmcli dev show로 NIC값을 전부 볼 수 있지만 DNS만 보면 되니까 grep으로 잘라서 보겠다.

그림 4. 바뀌지 않았다.

그림 4를 보면 파일을 통해 DNS값을 바꾸었음에도 불구하고, 반영되지 않은 모습을 볼 수 있다. 그 원인은 부팅될 때 이 파일을 읽어와서 그런 것으로 생각된다. 그러니, 네트워크 인터페이스를 껐다가 다시 켜보자.

"nmcli connection down ens160"을 한 뒤, "nmcli connection up ens160"을 해서 재부팅시켰다. 그리고 값을 확인해보니...

그림 5. 값이 바뀌었다.

그림 5와 같이 DNS값이 내가 바꾼 값으로 반영되어있다. 

 

예시로 DNS를 바꾸었지만 DNS말고 IP주소나 이것저것 다 바꿔줄 수 있다.

다만, 파일을 직접적으로 수정하는것이다보니 값을 잘못 적으면 문제가 생길 수 있다는 점만 알아두자.


두 번째 방식이다.

 

이번에는 파일을 직접 열어서 수정하는게 아니라 nmcli명령어로만 수정하는 것이다.

첫 번째 방식과 동일하게 파일의 값만 바꾸는 것이기 때문에 나중에 네트워크 인터페이스를 재부팅해줘야 한다.

이번에 쓸 명령어는 'nmcli connection modify ens160 ipv4.dns "172.16.233.15" '라고 써주자. 이 명령어는 네트워크 인터페이스 ens160의 dns값을 172.16.233.15로 바꿔주는 것이다.

DNS말고도 여러 값들을 수정할 수 있다.

'nmcli connection modify ens160 ipv4.addresses 172.16.233.100/24 ipv4.gateway 172.16.233.1 ipv4.dns "8.8.8.8" ipv4.method manual'와 같이 많은 것들을 수정할 수 있는데 필요한 것만 쏙 뽑아서 해주면 된다.

그림 6. DNS주소를 nmcli로 바꾸기

그림 6을 보면 알 수 있듯이 DNS주소를 172.16.233.15로 수정한 뒤에 ens160을 재부팅해주었다. 그랬더니...짜잔! 잘 바뀌어져 있다. 반영이 잘 되어있다!

 

이렇게 nmcli명령어로도 할 수 있다.

이 방법으로 하면, 스크립트를 짜는 방식으로도 ens160의 값을 바꿔줄 수 있으니 좀 좋을지도 모른다.


세 번째 방식이다.

 

이번 방법은 훨씬 쉽다.

TUI로 하는 것이다.

"nmtui"라는 명령어를 치면 그림 7과 같은 화면이 나온다.

그림 7. nmtui를 치면 나오는 화면

그림 7을 보면, "Edit a connection"이 dns나 IP주소 등등을 수정하는 거고, "Activate a connection"이 활성화 또는 비활성화 시키는 부분이다. 여기서 네트워크 인터페이스를 재부팅 시켜주면 된다.

Edit a connection을 눌러주자.

그림 8. Ethernet목록

그림 8과 같이 ethernet목록들이 나온다. 

내거는 ens160이니 이거를 수정해보자. <Edit...>을 누르자.

그림 9. ens160 값 수정하는 창

그림 9와 같이 값들을 수정할 수 있다. DNS주소를 172.16.233.5로 바꿔주자.

그림 10. DNS서버 IP주소를 바꿨다.

이제 바꾸었으니, 네트워크 인터페이스를 재부팅해줘야 한다. 그림 7에서 "Active a connection"을 눌러주자.

그림 11. 네트워크 활성화 창

그림 11과 같이 나오는데, ens160을 Deactivate를 눌렀다가 activate를 눌러서 재부팅을 해주자.

그리고~ 확인을 해보면? 

그림 12. DNS가 바뀌었는지 확인

그림 12와 같이 DNS가 제대로 바뀌었다.

 

솔직히 세 가지 방법 중 이 방법이 제일 쉬운 것 같다.

'IT학습_보안외 > 리눅스' 카테고리의 다른 글

리눅스 CRON  (0) 2026.06.11
리눅스 마운트 개념 정리  (0) 2026.06.09