前言:

本博客主要介绍了linux下wpa_supplicant配置连接wifi,还有能ping通IP,但ping不通域名的解决办法。

一.创建配置文件

配置文件一般放在/etc/目录下,并且以.conf结尾,配置样例:

我的文件名是wpa_supplicant.conf

ctrl_interface=/var/run/wpa_supplicant  # 一个目录,用于wpa_supplicant和wpa_cli的socket通信
network={
        ssid="yz0228"    # WIFI名称
        proto=WPA        # proto: list of accepted protocols, 可取WPA,RSN,如果没有设置,默认为: WPA RSN
        key_mgmt=WPA-PSK # 认证方式# 如果没有设置,默认为: WPA-PSK WPA-EAP
        pairwise=TKIP    # 如果没有设置,默认为: CCMP TKIP
        group=TKIP       # 如果没有设置,默认为: CCMP TKIP WEP104 WEP40 
        psk="12345678"	 # WIFI密码
}

看下/var/run/wpa_supplicant文件夹是否存在,没有则创建一个:

mkdir -p /var/run/wpa_supplicant

二.连接wifi

激活WiFi网卡,我的WiFi是wlan0:

ifconfig wlan0 up

运行:

wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf
  • -B Background 在后台以daemon 运行
  • -i interface
  • -c 配置文件

设置IP地址:

ifconfig wlan0 192.168.1.178

加入网关到路由:

route add default gw 192.168.1.1 dev wlan0

其他相关命令:

wpa_cli terminate   # 关闭连接
wpa_cli status      # 连接状态

三.设置DNS

上面操作完成后,ping IP可以ping通,但是域名ping不通,那需要配置下DNS。

查看/etc/resolv.conf文件,该文件一般是个软链接,查看链接的文件:

ls -l

我的是链接到了/tmp/resolv.conf文件,但是tmp目录下的文件在每次开机重启后都会丢失,因此修改了原来的软链接。

删除原来的resolv.conf文件,新的我链接到了/usr/local/resolv.conf下(需要自己新建),文件内容如下:

nameserver 8.8.8.8
nameserver 255.255.255.255

修改完就可以直接ping通域名了,不用重启网关:

 

发表评论

电子邮件地址不会被公开。