kali没网 | 配置代理
阅读此文先查看你是否和如下症状一样,本文会告诉你原因及解决办法
如需转载,标记出处
症状:
1.四个包全部丢失
┌──(kali㉿kali)-[~]
└─$ ping -c 4 www.baidu.com
PING www.baidu.com(2409:8c00:6c21:118b:0:ff:b0e8:f003 (2409:8c00:6c21:118b:0:ff:b0e8:f003)) 56 data bytes
--- www.baidu.com ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3061ms
2.网卡还在
eth0
是 Linux 系统中默认的网络接口名称,表示 第一块以太网接口(Ethernet)
(要是直接没有Ipv4地址说明网卡掉了,启用网卡之后就解决了)
禁用+启用网卡:
sudo ifconfig eth0 down
sudo ifconfig eth0 up
#上下选一个
sudo ip link set eth0 down
sudo ip link set eth0 up
┌──(kali㉿kali)-[~]
└─$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.xx.xx netmask 255.255.255.0 broadcast 192.168.55.255
--打码--lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
--打码--
3.是桥接模式
这个最重要,要是nat或者仅主机模式,我不能保证你能否适用以下解决方法,当然你也可以在虚拟机配置上改
(如图,鼠标碰右下角查看自己是什么模式)
(虚拟网络编辑器中可以修改模式)
解决方案
1.查看自己的静态ip是否和ifconfig的ip结果一样
/etc/network/interfaces
:是用于配置网络接口的文件。配置好之后,网络接口的配置会在系统启动时生效
┌──(kali㉿kali)-[~]
└─$ sudo vim /etc/network/interfaces
┌──(kali㉿kali)-[~]
└─$ sudo systemctl restart networking
在文件里将ifconfig得出的ip地址填写到interfaces里,网关虚拟机和实体主机的一样
2.配置代理
sudo nano /etc/environment
如果cash是在实体主机上,把ip地址改成实体主机的
如果在虚拟机上,改成127.0.0.1
事例如下:
http_proxy=192.168.xx.xx:7890
https_proxy=192.168.xx.xx:7890
3.ping网关
┌──(kali㉿kali)-[~] └─$ ping -c 4 192.168.xx.xx(这里是你的网关)
PING 192.168.xx.xx 56(84) bytes of data. 64 bytes from 192.168.xx.xx: icmp_seq=1 ttl=64 time=27.9 ms 64 bytes from 192.168.xx.xx: icmp_seq=2 ttl=64 time=16.5 ms 64 bytes from 192.168.xx.xx: icmp_seq=3 ttl=64 time=31.8 ms 64 bytes from 192.168.xx.xx: icmp_seq=4 ttl=64 time=18.4 ms --- 192.168.55.90 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3007ms
ping 192.168.xx.xx
(网关)是通的,说明虚拟机网络与宿主机的连接没有问题。
ping www.baid
u.com
失败,DNS 解析可能有问题
4.测 IPv4 网络
ping -c 4 8.8.8.8
-
如果
ping 8.8.8.8
(Google 提供的公共 DNS 服务器)失败,说明外网连不通,可能是网关或路由器的问题(这条线我没遇到,暂不写) -
如果
ping 8.8.8.8
成功,但ping www.baidu.com
失败,说明是 DNS 配置问题(看5)
5. DNS 配置
手动设置 DNS 服务器
将 Google 的 DNS 服务器 8.8.8.8
添加到系统的 DNS 配置文件 /etc/resolv.conf
中
tee
会将输入的内容写入指定的文件,将输入内容打印到终端屏幕上
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
ping -c 4 www.baidu.com
5.检查DNS 配置文件 /etc/resolv.conf
dig: parse of /etc/resolv.conf failed
错误表明你的 /etc/resolv.conf
文件存在格式或配置问题,可能无法正确解析 DNS 设置。
错误情况:
┌──(kali㉿kali)-[~]
└─$ dig www.google.comdig: parse of /etc/resolv.conf failed
只设置一个nameserver 如8.8.8.8
正确情况:
└─$ dig www.google.com
; <<>> DiG 9.18.16-1-Debian <<>> www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35164
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0;; QUESTION SECTION:
;www.google.com. IN A;; ANSWER SECTION:
www.google.com. 179 IN A 31.13.73.9;; Query time: 56 msec
;; SERVER: 8.8.8.8#53(8.8.8.8) (UDP)
;; WHEN: Sun Mar 23 02:56:58 EDT 2025
;; MSG SIZE rcvd: 48