
Linux용 Windows 하위 시스템에서 수행하는 거의 모든 작업에서 "호스트 이름 확인 방법"이라는 알림이 표시됩니다. 새로 설치할 때마다 이런 일이 발생하는 이유와 해결 방법은 무엇입니까?
답변1
- resolv.conf 심볼릭 링크와 파일이 있는지 확인하십시오.
cd /etc
ls -lha
stat resolv.conf
다음을 가리키는 심볼릭 링크가 표시되어야 합니다.
File: resolv.conf -> ../run/resolvconf/resolv.conf
Size: 29 Blocks: 0 IO Block: 4096 symbolic link
../run/resolvconf/resolv.conf의 원본 파일은 WSL Ubuntu로 부팅할 때 새로 생성되며 다음 내용을 포함합니다.
# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf:>
# [network]
# generateResolvConf = false
nameserver 172.23.0.1
귀하의 경우에는 네임서버 주소가 다를 수 있습니다
- 루트 etc 폴더에 wsl.conf 파일을 생성하십시오(sudo가 필요할 수 있음):
sudo nano /etc/wsl.conf
- 파일에 다음 줄을 붙여넣고 저장을 종료합니다(Ctrl+X).
[network]
generateResolvConf = false
- resolv.conf 파일에 대한 심볼릭 링크를 삭제하십시오.
cd /etc
sudo rm resolv.conf
- /etc에 새 resolv.conf 파일을 만듭니다.
sudo nano resolv.conf
(Ctrl+O 및 Ctrl+X)를 사용하여 저장하려면 다음 내용을 붙여넣으세요.
# This file was automatically generated by WSL. To stop automatic generation of this file,
# add the following entry to /etc/wsl.conf:>
# [network]
# generateResolvConf = false
# nameserver 172.23.0.1
nameserver 8.8.8.8
답변2
왜 이런 일이 발생하는지 모르겠습니다(설명을 통해 답변을 개선해 주세요). 이 문제에 대한 효과적인 해결책은 다음과 같습니다.
1. 실행:
nano /etc/hostname
컴퓨터 이름을 대문자로 입력하세요(예: DESKTOP-SOMETHING). 컴퓨터 이름 이외의 항목을 삭제하세요.
저장 및 종료.
2. 그런 다음 다음을 실행합니다.
nano /etc/hosts
그런 다음 파일의 처음 두 행이 다음과 같은지 확인하십시오.
127.0.0.1 localhost.localdomain localhost
127.0.1.1 DESKTOP-SOMETHING
저장 및 종료.
답변3
내 경우에는 유용한 명령은 다음과 같습니다.
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
답변4
WSL2 내에서 로컬 Windows 네트워크 호스트를 확인하기 위해 나에게 도움이 된 방법은 다음 내부 DNS 확인 항목(네임서버)을 추가하는 것이었습니다 /etc/resolv.config
.
search <name-of-my-internal-ad-domain.net>
nameserver 10.0.xx.xxx # local WAN DNS server
nameserver 10.0.xx.xxx # local WAN DNS server
nameserver 1.1.1.1
sudo tee /etc/resolv.conf << EOF
search <name-of-my-internal-ad-domain.net>
nameserver 10.0.xx.xxx
nameserver 10.0.xx.xxx
nameserver 1.1.1.1