최근 데스크탑 정지로 인해 kali linux 노트북의 전원을 강제로 꺼야 했습니다. 이제 재부팅할 때마다 apt-get
및 같은 도구가 수동 확인에 여전히 작동 ping
하더라도 브라우저 및 도구에 대한 DNS 확인이 중단됩니다 . dig
재부팅할 때마다 다음과 같이 수정합니다.
먼저 대부분의 심볼릭 링크가 예상대로 있는지 확인합니다.
$ ls -altrh /etc/resolv.conf
lrwxrwxrwx 1 root root 31 Apr 17 23:40 /etc/resolv.conf -> /etc/resolvconf/run/resolv.conf
$ ls -altrh /etc/resolvconf/run
lrwxrwxrwx 1 root root 15 Apr 17 23:40 /etc/resolvconf/run -> /run/resolvconf
그런 다음 이전 구성을 계속 사용할 수 있는지 확인합니다.
$ cat /etc/resolvconf/resolv.conf.d/base
# Generated by NetworkManager
nameserver 8.8.8.8
그런 다음 앞서 언급한 심볼릭 링크 중 하나가 가리키는 누락된 디렉토리를 만들어야 합니다.
$ sudo mkdir /run/resolvconf/
resolv.conf
마지막으로, 내가 만든 디렉터리 내에 누락된 파일을 만들고 , 이전에 확인한 파일에 보존되어 있던 네임서버 정보로 파일을 채워야 합니다.
$ sudo touch /run/resolvconf/resolv.conf
$ sudo cp /etc/resolvconf/resolv.conf.d/base /run/resolvconf/resolv.conf
이제 DNS 확인은 모든 프로그램에서 작동합니다.
질문:이 해결 방법을 자동화하기 위해 시작 스크립트를 작성하기 전에 이 작업을 다시는 수행하지 않아도 되는 방법을 아는 사람이 있습니까? 왜 이런 일이 일어나는지 알 수 없습니다. 감사합니다.
시스템 정보:
$ cat /etc/debian_version
Kali Linux Rolling
$ uname -a
Linux foobar 4.9.0-kali3-amd64 #1 SMP Debian 4.9.18-1kali1 (2017-04-04) x86_64 GNU/Linux
답변1
Kali 설치와 동일한 문제가 있습니다. 원래는 제가 설치한 VPN 소프트웨어인 줄 알았는데 몇 가지 조사 결과 Kali에 문제가 있는 것 같습니다.
내가 사용해 본 문제에 대한 더 쉬운 해결책은 다음과 같습니다.sudo apt-get purge resolvconf
그런 다음 실행 직후sudo apt-get install resolvconf
불행하게도 지금은 부팅할 때마다 이 작업을 수행해야 하지만 resolvconf 파일을 자동으로 제거하고 다시 설치하는 시작 스크립트를 만드는 것과 같은 생각을 갖고 있었습니다. 이 두 명령을 사용하는 것은 누락된 디렉터리를 직접 다시 만드는 것보다 조금 더 쉬울 것이며 시작 스크립트를 더 쉽게 작성할 수도 있습니다.
답변2
resolvconf를 수동으로 활성화하고 시작하는 문제를 해결했습니다.
sudo systemctl enable resolvconf
sudo systemctl start resolvconf
이제 부팅 후 이름 확인이 작동합니다. 어쩌면 Kali가 resolvconf를 서비스로 비활성화했을 수도 있습니다.
답변3
방금 루트 폴더에 간단한 bash 스크립트를 만들었습니다.
touch netresolv.sh
vim netresolv.sh
//즐겨찾기 편집기로 대체vim
암호:
#!/bin/bash
echo "nameserver 8.8.8.8" > /etc/resolv.conf && echo "nameserver 1.1.1.1" >> /etc/resolv.conf && service
NetworkManager restart && exit
//텍스트 편집기를 저장하고 종료합니다.
chmod +x netresolv.conf
지금은 로그인 시 다시 시작할 때마다 자동으로 실행되도록 스크립트를 추가하는 방법과 위치를 조사하면서 매번 로그인 후 수동으로 실행합니다.
누구든지 이 스크립트를 나머지 부분에서 어떻게 사용하는지 말해 줄 수 있나요? 루트가 로그인되기 전에 웹에 연결되어 취약해지기 때문에 로그인 전에 실행되는 것을 원하지 않습니다. 아니면 그럴까요? 직업 으로 추가할까요 cron
? 아니면 systemd
서비스로? 아니면 에 추가하시겠습니까 ~/.profile
?