웹사이트 검색

WSL 느린 다운로드 속도; 네트워크 느림 [해결]


일부 Windows 사용자는 WSL 내부에서 다운로드 속도가 매우 느리거나 네트워크 응답이 지연되는 문제를 경험했습니다. 이는 여러 가지 원인으로 발생할 수 있지만, 궁극적으로 NAT와 관련된 구성 요소가 문제입니다. 이 글에서는 Linux 환경 내에서 apt, curl, git 및 기타 모든 네트워크 작업의 전체 네트워크 속도를 복원하는 방법을 살펴보겠습니다.

WSL 2는 네트워크 주소 변환(NAT)이 적용된 가상화된 네트워크 어댑터를 사용합니다. 이 NAT 계층은 추가적인 오버헤드를 발생시키며 Windows 네트워킹 구성 요소와 충돌할 수 있습니다. 또한 기본 WSL 네트워크 설정(IPv6, DNS 또는 MTU 등)은 종종 실제 네트워크와 맞지 않습니다. Windows Defender는 WSL과 외부 간에 오가는 모든 패킷을 스캔할 수 있어 처리량을 크게 줄일 수 있습니다. 마지막으로, 이전 WSL 버전은 최신 Windows 11 빌드에서 제공되는 성능 최적화를 갖추고 있지 않습니다.

WSL 느린 다운로드 속도

WSL에서 다운로드 속도가 느리고 네트워크가 전반적으로 느린 경우, 아래 해결 방법을 따르세요.

  1. 미러링 네트워킹 모드 활성화
  2. WSL 내부에서 IPv6 비활성화
  3. 더 빠른 DNS 확인기로 전환
  4. WSL을 Windows Defender 실시간 검사에서 제외
  5. 네트워크 MTU 크기 조정

WSL 네트워크 느림

1. 미러링 네트워킹 모드 활성화

미러링된 네트워킹은 WSL이 Windows와 동일한 IP 주소와 네트워크 인터페이스를 공유하도록 하여 NAT 계층을 완전히 우회합니다. 이는 주요 속도 저하 원인을 제거하고 지연 시간을 크게 줄입니다. 이를 수행하려면 아래에 언급된 단계를 따르십시오.

  1. 모든 WSL 인스턴스와 터미널을 닫으세요.
  2. 관리자 권한으로 Windows PowerShell 또는 명령 프롬프트를 엽니다.
  3. Windows 사용자 폴더에서 .wslconfig 파일을 생성하거나 편집하세요.
notepad "$env:USERPROFILE\.wslconfig"

이제 파일에 다음 줄을 추가하세요.

[wsl2]
networkingMode=mirrored
dnsTunneling=true
firewall=true

파일을 저장하고 WSL을 완전히 재시작하세요.

이제 명령어 wsl --shutdown를 실행하세요.

마지막으로, WSL을 실행하고 이것이 도움이 되는지 확인하세요.

2. WSL 안에서 IPv6 비활성화

많은 라우터와 ISP는 IPv6를 제대로 처리하지 못해 타임아웃, 재시도, 느린 IPv4 전환이 발생합니다. 따라서 IPv6를 비활성화하면 모든 트래픽이 더 빠른 IPv4 경로를 통해 전달됩니다. 동일하게 설정하려면 아래에 언급된 단계를 따르세요.

  • WSL 터미널을 열세요.
  • 명령어 sudo nano /etc/sysctl.conf 를 사용하여 sysctl 구성 파일을 편집합니다
  • 마지막에 이 두 줄을 추가하세요:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
  • 파일을 저장하고 변경 사항을 적용하세요:
sudo sysctl -p
  • 다음 명령어로 속도를 테스트하세요: curl -4 -o /dev/null http://speedtest.tele2.net/100MB.zip.

마지막으로, 문제가 해결되었는지 확인하세요.

3. 더 빠른 DNS 해석기로 전환

WSL은 Windows DNS 설정을 상속받지만, 종종 느리거나 신뢰할 수 없는 확인자를 사용합니다. Cloudflare(1.1.1.1) 또는 Google(8.8.8.8)은 더 빠르게 응답하며 모든 도메인 조회에서 지연 시간을 줄여, apt 업데이트 및 패키지 다운로드 속도를 눈에 띄게 향상시킵니다.

WSL 터미널에서 자동 DNS 생성을 비활성화하십시오:

sudo nano /etc/wsl.conf

다음 줄을 추가하세요:

[network]
generateResolvConf = false

저장하고 종료합니다. 그런 다음 기존 resolv.conf를 제거하고 새로 만듭니다:

sudo rm /etc/resolv.conf
sudo nano /etc/resolv.conf

다음을 붙여넣으세요:

nameserver 1.1.1.1
nameserver 8.8.8.8

파일을 저장하고 덮어쓰기를 방지하세요:

sudo chattr +i /etc/resolv.conf

PowerShell에서 wsl --shutdown으로 WSL을 재시작하세요.

4. Windows Defender 실시간 검사에서 WSL 제외

Windows Defender는 WSL 프로세스가 읽거나 쓰는 모든 파일을 검사하며, 임시 다운로드 데이터도 포함됩니다. 이는 큰 CPU 부하를 추가합니다. WSL 가상 파일 시스템을 제외하면 검사가 중지되며 다운로드 속도가 즉시 향상됩니다. 동일한 작업을 수행하려면 아래에 언급된 단계를 따라야 합니다.

  1. Windows 보안을 엽니다.
  2. 바이러스 및 위협 방지 > 설정 관리로 이동하세요.
  3. 제외 항목으로 이동한 다음, 제외 항목 추가 또는 제거를 클릭하세요.
  4. 제외 항목 추가 > 폴더를 클릭하세요.
  5. 경로에 붙여넣기 – \\wsl.localhost\.
  6. 폴더 선택을 클릭하십시오. 제외 항목이 나타나는지 확인하십시오.
  7. 또한, 특정 배포 폴더의 경로를 알고 있다면 그 폴더를 제외 항목으로 추가하세요(예: C:\Users\YourName\AppData\Local\Packages\…\LocalStateootfs).

WSL을 완전히 다시 시작하려면: 모든 터미널을 닫은 다음 PowerShell에서 wsl --shutdown을 실행하세요.

5. 네트워크 MTU 크기 조정

잘못된 최대 전송 단위(MTU)는 패킷 분할과 재전송을 유발하여 성능을 조용히 저하시킵니다. 적절한 MTU를 설정하면(일반적으로 이더넷은 1500, PPPoE/VPN은 1420) 이 오버헤드를 제거할 수 있습니다.

먼저, Windows에서 최적의 MTU를 찾으세요. 관리자 권한으로 PowerShell을 열고 실행합니다.

ping -f -l 1472 8.8.8.8

단편화 없이 응답이 올 때까지 숫자(1472, 1450, 1400)를 낮춥니다. MTU를 얻으려면 28을 더합니다.

영구적으로 만들려면 시작 스크립트를 만드세요.

sudo nano /etc/wsl.conf

다음 코드를 추가하세요.

[boot]
command = "ip link set dev eth0 mtu 1500"

저장하고 종료한 다음 실행하세요.

이러한 해결책들의 도움으로 귀하의 문제가 해결되기를 바랍니다.

WSL 속도를 높이는 방법은?

.wslconfig에서 미러드 네트워킹 모드를 활성화하여 NAT 병목 현상을 우회하세요. WSL 내부에서 IPv6를 비활성화하여 폴백 지연을 방지하세요. 1.1.1.1과 같은 빠른 DNS 해석기를 사용하고 Windows Defender 실시간 검사에서 \\wsl.localhost\를 제외하세요. MTU를 1500으로 조정하고 wsl -update를 실행하여 Microsoft의 최신 성능 패치를 적용하세요.

왜 내 LAN 다운로드 속도가 이렇게 느린가요?

WSL 2는 오버헤드를 추가하고 실제 네트워크 어댑터를 잘못 보고할 수 있는 가상 NAT를 사용합니다. Windows Defender는 모든 파일 전송을 검사하여 처리량을 심각하게 줄입니다. 로컬 라우터에서 MTU가 맞지 않거나 IPv6 라우팅에 문제가 있으면 패킷이 더 조각날 수 있습니다. 해결하려면 미러링 네트워킹으로 전환하고 WSL을 안티바이러스 검사에서 제외하며 LAN 케이블 또는 Wi-Fi 신호 강도를 확인하세요.

관련기사