Computer >> 컴퓨터 >  >> 문제 해결 >> Linux

Linux에서 네트워크 연결 활성화 실패 오류 해결 방법 총정리

리눅스 배포판에서 네트워크 연결 활성화에 실패하는 문제는 주로 잘못된 네트워크 설정 때문에 발생합니다. 또한 시스템의 날짜/시간 설정이 올바르지 않은 경우에도 이 오류가 나타날 수 있습니다.

이 오류는 사용자가 시스템에 로그인하거나 인터넷을 사용하려고 할 때 발생합니다. 일부 사용자는 OS를 설치한 직후 이 문제를 겪었고, 다른 사용자는 한동안 정상적으로 사용하다가 어느 순간부터 오류가 발생했습니다. 이 문제는 특정 리눅스 배포판에만 국한되지 않으며 거의 모든 배포판에서 발생할 수 있습니다. 유선 이더넷과 Wi-Fi 연결 모두에서 문제가 생길 수 있다는 점도 참고하세요.

문제 해결 전 기본 점검 사항

해결 방법을 시도하기 전에 아래 항목들을 먼저 확인해 보세요.

  • 라우터와 모뎀이 제대로 연결되어 있는지 확인합니다.
  • USB 모뎀을 사용 중이라면 시스템의 다른 포트에 연결해 봅니다.
  • 시스템과 네트워크 장비(공유기, 모뎀)를 재시작합니다.
  • 이더넷과 Wi-Fi가 모두 작동하지 않는다면 USB 동글을 사용해 인터넷에 연결하거나 스마트폰의 테더링(핫스팟)을 이용해 보세요.
  • 시스템의 비행기 모드를 켰다 끄면서 문제가 해결되는지 확인합니다.

방법 1: 네트워크 연결 비활성화 후 다시 활성화

일시적인 소프트웨어 오류로 인해 문제가 발생했을 수 있으며, 네트워크 연결을 초기화하면 해결될 수 있습니다. 여기서는 Ubuntu를 기준으로 설명합니다.

  1. 시스템의 설정(Settings)을 열고 왼쪽 메뉴에서 네트워크(Network)를 클릭합니다.
  2. 문제가 되는 연결의 토글 스위치를 끔(off)으로 전환하여 비활성화합니다.
  3. 시스템을 재시작합니다. 재시작 후 네트워크 연결을 활성화하고 문제가 해결되었는지 확인합니다.
  4. 그래도 해결되지 않으면 Alt + F2 키를 동시에 눌러 실행 명령창을 열고 다음을 입력합니다:
    nm-connection-editor
  5. 문제가 있던 네트워크 유형(예: 이더넷)을 확장한 후 그 아래의 모든 항목을 삭제합니다.
  6. 네트워크 편집기를 모두 닫고, 시스템 트레이의 네트워크 아이콘을 클릭합니다.
  7. 네트워크를 비활성화했다가 다시 활성화합니다.
  8. 시스템을 재시작한 후 문제가 해결되었는지 확인합니다.

방법 2: 빠른 시작(Fast Boot) 비활성화 (듀얼 부팅 시스템)

Windows의 빠른 시작 옵션은 Linux와 함께 듀얼 부팅하는 시스템에서 문제를 일으키는 것으로 알려져 있습니다. 현재 문제의 원인이 이것일 수 있으므로, Windows에서 빠른 시작을 비활성화하면 해결될 수 있습니다.

  1. 시스템의 Windows 환경에서 검색창에 제어판(Control Panel)을 입력하고 검색 결과에서 제어판을 실행합니다.
  2. 하드웨어 및 소리(Hardware and Sound)를 클릭합니다.
  3. 전원 옵션(Power Options)을 클릭합니다.
  4. 왼쪽 메뉴에서 전원 단추 작동 설정(Choose What the Power Buttons Do)을 클릭합니다.
  5. 빠른 시작 켜기(Turn on Fast Startup) 옵션의 체크를 해제합니다. 옵션이 회색으로 비활성화되어 있다면 먼저 현재 사용할 수 없는 설정 변경(Change Settings that are Currently Unavailable)을 클릭한 후 체크를 해제합니다.
  6. 변경 사항을 저장하고 Linux 환경으로 부팅하여 문제가 해결되었는지 확인합니다. 경우에 따라 리눅스 배포판을 완전히 제거 후 재설치해야 할 수도 있습니다.

방법 3: 해당 네트워크의 자동 연결 옵션 비활성화

사용하지 않는 연결 유형(예: USB 이더넷)에 대해 계속 오류 메시지가 뜨면 상당히 번거로울 수 있습니다. 자동 연결 옵션을 비활성화하면 해당 네트워크에 대한 오류 프롬프트를 없앨 수 있습니다.

  1. 리눅스 배포판의 설정을 열고 네트워크(Network)를 클릭합니다.
  2. 문제가 되는 네트워크 옆의 톱니바퀴(기어) 아이콘을 클릭합니다.
  3. 자동 연결(Connect Automatically) 옵션의 체크를 해제하고 변경 사항을 적용합니다.
  4. 연결 문제가 해결되었는지 확인합니다.

방법 4: DNS를 DNSMASQ로 변경

시스템의 DNS에 문제가 있으면 이 오류가 발생할 수 있습니다. 이 경우 무료로 제공되며 시스템 자원을 적게 사용하는 DNSMASQ로 전환하면 문제가 해결될 수 있습니다.

  1. 리눅스 터미널에서 다음 명령어를 실행합니다:
    sudo gedit /etc/NetworkManager/NetworkManager.conf
  2. 파일에서 dns 값을 dnsmasq로 변경한 후 저장하고 파일을 닫습니다.
  3. 시스템을 재시작한 후 문제가 해결되었는지 확인합니다.

방법 5: 시스템의 날짜/시간 설정 수정

날짜/시간 설정은 시스템 운영에 다양한 영향을 미칩니다. 날짜/시간 설정이 올바르지 않으면 이 오류가 발생할 수 있으므로, 설정을 바로잡으면 문제가 해결될 수 있습니다.

  1. 화면 왼쪽 하단의 응용 프로그램 표시(Show Applications)를 클릭한 후 설정(Settings)을 엽니다.
  2. 왼쪽 메뉴에서 날짜 및 시간(Date & Time)을 클릭합니다.
  3. 자동 날짜 및 시간(Automatic Date & Time)을 비활성화합니다.
  4. 시스템의 날짜와 시간을 수동으로 정확하게 설정한 후 문제가 해결되었는지 확인합니다.

방법 6: 설정에서 블루투스 기기 삭제

오류 발생 시점에 사용할 수 없는 블루투스 기기가 많이 등록되어 있다면, 네트워크 관리자가 해당 기기들에 연결하지 못해 오류가 발생할 수 있습니다. 이 경우 블루투스 기기를 삭제하면 문제가 해결될 수 있습니다.

  1. 시스템에 연결된 블루투스 기기를 모두 제거합니다.
  2. 시스템의 설정을 열고 왼쪽 메뉴에서 블루투스(Bluetooth)를 클릭합니다.
  3. 블루투스를 비활성화합니다.
  4. 리눅스 터미널을 실행하고 다음을 입력합니다:
    bluetoothctl
  5. 등록된 모든 블루투스 기기 목록이 표시됩니다. 그런 다음 아래 명령어를 입력합니다:
    bluetoothctl remove AA:BB:CC:DD:EE:FF
  6. AA:BB:CC:DD:EE:FF 부분을 해당 기기의 ID 문자열로 교체합니다. ID 문자열은 네트워크 아이콘 >> 기기 이름 >> 기어 아이콘 순서로 클릭하면 확인할 수 있습니다.
  7. 모든 블루투스 기기에 대해 이 과정을 반복한 후 문제가 해결되었는지 확인합니다.
  8. 그래도 해결되지 않으면 .crt 파일의 경로를 확인합니다. .crt 파일이 저장된 폴더 이름에 공백이 있다면 공백을 제거한 후 문제가 해결되는지 확인합니다.

방법 7: 다른 통신 장치 블랙리스트 등록

시스템에 내장 4G 장치처럼 두 번째 이더넷/Wi-Fi 유사 장치가 존재하고, 시스템이 해당 장치로 인터넷에 연결하려고 시도하는 경우 이 오류가 발생할 수 있습니다. 이 경우 다른 통신 장치를 블랙리스트에 등록하면 문제가 해결될 수 있습니다.

  1. 리눅스 터미널을 열고 다음을 입력합니다:
    sudo lshw -C network
  2. 네트워크 장치 목록이 표시됩니다. 현재 사용하지 않는 장치를 찾습니다. 예를 들어 사용하지 않는 cdc_ether가 목록에 표시될 수 있습니다.
  3. 터미널에 다음 명령어를 입력합니다(새 블랙리스트 파일이 생성됩니다):
    sudo -H gedit /etc/modprobe.d/blacklist-cdc_ether.conf
  4. 파일에 다음 두 줄을 추가합니다:
    blacklist cdc_ether
    
    blacklist usbnet
  5. 파일을 저장하고 시스템을 재시작합니다.
  6. 재시작 후 문제가 해결되었는지 확인합니다. 참고로 내장 4G 장치를 사용해야 할 때는 해당 장치를 다시 활성화해야 합니다.

방법 8: 블랙리스트에서 네트워크 드라이버 제거

네트워크 장치가 시스템의 블랙리스트에 등록되어 있으면 이 오류가 발생할 수 있습니다. 이 경우 블랙리스트에서 해당 항목을 제거하면 문제가 해결될 수 있습니다.

  1. 리눅스 터미널에 다음 명령어를 입력하고 Enter 키를 누릅니다:
    sudo gedit /etc/modprobe.b/blacklist.conf
  2. 열린 파일에서 네트워크 관련 드라이버/모듈이 블랙리스트에 등록되어 있는지 확인합니다. 예를 들어 Broadcom 네트워크 카드를 사용 중이라면 bcmabcmsmac 관련 항목을 제거합니다.
  3. 시스템을 재시작한 후 문제가 해결되었는지 확인합니다.

방법 9: 네트워크 관리자(Network Manager) 재설치

네트워크 관리자는 리눅스 배포판에서 모든 네트워크 관련 작업을 담당합니다. 네트워크 관리자 설치가 손상되었다면 이 오류가 발생할 수 있습니다. 이 경우 네트워크 관리자를 재설치하면 문제가 해결될 수 있습니다.

  1. 시스템의 리눅스 셸(Linux Shell)을 실행하고 다음 명령어를 입력합니다:
    sudo systemctl restart network-manager.service
  2. 문제가 해결되었는지 확인합니다.
  3. 해결되지 않았다면 다음 명령어를 실행합니다:
    sudo /etc/init.d/network-manager force-reload
  4. 암호를 요구하면 사용자 암호를 입력한 후 문제가 해결되었는지 확인합니다.
  5. 그래도 해결되지 않으면 다음 명령어를 실행합니다:
    sudo apt-get install -d --reinstall network-manager network-manager-gnome
  6. 문제가 해결되었는지 확인합니다.

방법 10: 네트워크 카드/드라이버의 전원 관리 비활성화

전원 관리 기능이 네트워크 연결에 문제를 일으키는 것으로 알려져 있습니다. 현재 오류의 원인이 이것일 수 있으므로, 전원 관리를 비활성화하면 문제가 해결될 수 있습니다. 여기서는 Ubuntu와 RTL8192CU 드라이버를 기준으로 설명합니다.

  1. 리눅스 터미널을 열고 다음 명령어들을 하나씩 실행합니다:
    sudo apt-get install linux-headers-generic build-essential dkms
    sudo apt-get install git
    git clone https://github.com/pvaret/rtl8192cu-fixes.git
    sudo dkms add ./rtl8192cu-fixes
    sudo dkms install 8192cu/1.11
    sudo depmod -a
    sudo cp ./rtl8192cu-fixes/blacklist-native-rtl8192.conf /etc/modprobe.d/
  2. 시스템을 재부팅한 후 문제가 해결되었는지 확인합니다.

방법 11: 네트워크 장치의 하드웨어 암호화 비활성화

네트워크 장치의 암호화 처리에 문제가 있으면 이 오류가 발생할 수 있습니다. 이 경우 하드웨어 암호화를 비활성화하면 문제가 해결될 수 있습니다. 여기서는 Ubuntu와 RT2800PCI 장치를 기준으로 설명합니다.

  1. 리눅스 터미널에서 다음 명령어를 실행합니다:
    echo "options rt2800pci nohwcrypt=y"
  2. 그런 다음 아래 명령어들을 하나씩 실행합니다:
    sudo tee /etc/modprobe.d/rt2800pci.conf
    
    sudo modprobe -rfv rt2800pci
    
    sudo modprobe -v rt2800pci
    
    sudo sed -i 's/3/2/' /etc/NetworkManager/conf.d/*
  3. 시스템을 재시작한 후 문제가 해결되었는지 확인합니다.

방법 12: 리눅스 커널을 최신 빌드로 업데이트

리눅스 커널은 운영체제의 핵심 코어로, 소프트웨어 응용 프로그램과 컴퓨터 하드웨어 사이의 중개 역할을 합니다. 모든 종류의 리눅스 배포판의 기반이 되는 요소입니다. 커널은 새로운 기술 발전에 대응하고 알려진 버그를 수정하기 위해 정기적으로 업데이트됩니다. 리눅스 배포판의 커널이 오래되었다면 이 오류가 발생할 수 있으며, 커널을 업데이트하면 문제가 해결될 수 있습니다. 여기서는 Ubuntu를 기준으로 설명합니다.

  1. 리눅스 셸을 열고 다음을 입력합니다:
    sudo apt-get upgrade linux-image-generic
  2. 시스템을 재시작한 후 연결 문제가 해결되었는지 확인합니다.

방법 13: 리눅스 배포판을 최신 빌드로 업그레이드

새로운 기능 추가와 알려진 버그 수정을 위해 모든 리눅스 배포판은 지속적으로 업데이트됩니다. 오래된 버전의 리눅스 배포판을 사용 중이라면 이 오류가 발생할 수 있으며, 배포판을 업데이트하면 문제가 해결될 수 있습니다. 여기서는 Ubuntu를 기준으로 설명합니다.

  1. 리눅스 터미널을 열고 다음을 입력합니다:
    sudo apt-get upgrade
  2. 사용자 계정의 암호를 입력하면 사용 가능한 업데이트 목록이 표시됩니다.
  3. y 키를 눌러 업데이트를 확인한 후 Enter 키를 누릅니다.
  4. 업데이트 과정이 완료될 때까지 기다린 후 문제가 해결되었는지 확인합니다.

마무리: 그래도 해결되지 않는다면

위의 방법으로도 문제가 해결되지 않는다면 리눅스 배포판을 재설치해야 할 수 있습니다. 다만 재설치하기 전에 iwconfig 명령어를 시도해 보는 것이 좋습니다. 또한 시스템의 BIOS를 업데이트해 보거나, WICD 네트워크 관리자를 사용해 보세요. 그리고 IPv6(Link-Local) 사용을 시도하거나 TCP를 비활성화하는 방법도 도움이 될 수 있습니다.