Post

[Linux] 리눅스 네트워크 연결 명령어

Linux - 네트워크 연결: CentOS 7 기반의 다양한 명령어와 설정

✅회사에서 삽질..

어느날 회사에서 서버실의 모든 컴퓨터를 10분정도 다운시켰다가 다시 켜라는 공지를 듣게되었습니다. 제가 관리하는 3대의 서버 컴퓨터 중 한개의 리눅스 서버에서 SSH연결이 안 되어서 하루종일 삽질하며 어떤 원인인지.. 그리고 어떻게 해결하였는지 공유하고 싶었습니다.

✅삽질 타임라인


  1. 서버 컴퓨터 모두 재가동 후 SSH 접속 불가.. → Connection Timeout
    1. SSH 접속을 위한 방화벽, 포트관련 등 보안 관련 쪽 설정들을 확인하며 변경하였지만 실패했습니다.
    2. sshd라는 서비스가 inactive(dead)로 확인되어 systemctl start sshd 명령어를 입력했는데 컴퓨터 강제 shutdown.. 하드웨어 문제라고 생각하여 그쪽으로 또 검색과 삽질을 했습니다.
  2. SSH뿐만이 아니라고 생각되어 ping, 그리고 원격접속이 아닌 컴퓨터에서 직접 필요한 솔루션들 실행시킴
    1. ping을 했지만 timeout.. → 네트워크 문제인가?
    2. 웹 어플 실행시켰지만 그 웹페이지에 접속 불가능 → 네트워크 문제다!
  3. 네트워크 관련 명령어로 네트워크 상태확인
    1. 이더넷 연결은 잘 됐는데 ipv4 할당이 안 됐습니다.
    2. 재부팅 후 네트워크 관련 서비스들과 설정이 초기화 되었다고 판단했습니다.
    3. 이후 아래와 같이 쭈욱 진행하였습니다.

네트워크 상태 확인 명령어


1. ifconfig

ifconfig 명령어는 네트워크 인터페이스의 상태를 확인하는 데 사용됩니다. 해당 명령어를 통해 현재 활성화된 인터페이스의 IP 주소, 서브넷 마스크, MAC 주소 등을 확인할 수 있습니다.

1
ifconfig

2. ip a

ip a 명령어도 네트워크 인터페이스와 관련된 정보를 보여줍니다. ifconfig와 유사하지만 좀 더 간결하고 현대적인 출력을 제공합니다.

1
ip a

3. route

route 명령어는 현재 라우팅 테이블 정보를 보여줍니다. 이를 통해 현재 시스템이 어떤 경로로 데이터를 전송하는지 확인할 수 있습니다.

1
2
3
bashCopy code
route

네트워크 연결 관리 명령어

1. ifupifdown

ifup 명령어는 네트워크 인터페이스를 활성화하고, ifdown 명령어는 비활성화합니다. 이 명령어는 특히 CentOS 7에서 네트워크 설정을 변경하거나 인터페이스를 다시 시작할 때 유용하게 사용됩니다.

1
2
3
4
bashCopy code
sudo ifup eth0
sudo ifdown eth0

2. nmcli

NetworkManager Command Line Interface(nmcli)는 CentOS 7에서 네트워크 매니저를 효과적으로 관리하는 도구입니다. 아래는 nmcli를 사용하여 인터페이스를 활성화 및 비활성화하는 예시입니다.

1
2
3
4
bashCopy code
sudo nmcli connection up eth0
sudo nmcli connection down eth0

ifup 명령어의 자세한 사용법

ifup 명령어는 네트워크 인터페이스를 활성화하는 데 사용되며, /etc/sysconfig/network-scripts/ 디렉터리에 위치한 인터페이스 설정 파일을 참조합니다. 예를 들어, ifup 명령어로 eth0 인터페이스를 활성화하려면 다음과 같이 실행합니다.

1
2
3
bashCopy code
sudo ifup eth0

이때, /etc/sysconfig/network-scripts/ifcfg-eth0 파일에 해당 인터페이스의 설정이 정의되어 있어야 합니다. 이 파일은 다음과 같은 내용을 포함할 수 있습니다.

1
2
3
4
5
6
7
8
plaintextCopy code
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

위의 설정 파일에서 DEVICE는 인터페이스의 이름, BOOTPROTO는 부팅 프로토콜 설정, ONBOOT는 부팅 시 자동으로 활성화 여부, IPADDR는 IP 주소, NETMASK는 서브넷 마스크, GATEWAY는 게이트웨이 주소를 나타냅니다.

ifup 명령어와 다른 명령어의 차이


ifup 명령어는 NetworkManager를 사용하지 않는 경우에 주로 사용됩니다. 이는 주로 CentOS 7 이전 버전에서 사용되었으며, 현재는 nmcli나 NetworkManager와 같은 툴이 더 많이 사용됩니다. ifup은 단일 인터페이스를 활성화하거나 비활성화하는 데 사용되는 반면, nmcli는 더 많은 유연성과 다양한 설정 옵션을 제공하여 네트워크 관리를 더 효과적으로 수행할 수 있습니다.

📌해결 포인트


  • 이런 문제가 또 생길 때는 먼저 ping이나 이런 거로 전체 적인 네트워크 연결 테스트를 해보고 그다음 방화벽, 포트허용 등을 하는게 좋을 것 같습니다.
  • 검색을 하면서 주관을 내려놓는 것도 좋습니다. 예를 들어, 어떤 원인이 의심이 됐을 때 모든 상황을 거기에 끼워 맞추지 않는다면 다방면으로 트러블 슈팅의 방법을 찾아낼 수 있습니다.
This post is licensed under CC BY 4.0 by the author.

Comments powered by Disqus.