Linux配置连接wifi功能步骤总结

1.        配置wpa_supplicant.conf文件,基本内容如下

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
update_config=1
network={
    ssid="Honor 10"
    psk="zyj123#.."
    priority=5
} 
network={
    ssid="company"
    psk="companyPwd"
    priority=4
}

注意:priority是网络的优先级,数字越大优先级越高

2.        使用命令启动wpa服务端

wpa_supplicant -i $WIFIINTERFACE -c $WPASUP_FILE -B

 这里WIFIINTERFACE是要连wifi的网卡名,如wlan0,WPASUP_FILE是第一步中wpa_supplicant.conf文件的路径

3.        用wpa_cli status命令查看wifi连接情况,运行结果如下:

Selected interface 'wlan0'
bssid=略
freq=略
ssid=huawei
id=0
mode=station
pairwise_cipher=CCMP
group_cipher=TKIP
key_mgmt=WPA2-PSK
wpa_state=COMPLETED
ip_address=略
address=略
uuid=略
ieee80211ac=1

注意:ssid是wifi名,wpa_state字段标明了该wifi名的连接情况——

COMPLETED表示已完成连接

DISCONNECTED表示已断开

SCANNING表示正在结合wpa_supplicant.conf文件中配置的wifi信息扫描wifi

ASSOCIATING表示已经扫描到了wifi,正在试图连接

4WAY_HANDSHAKE表示当前wifi连接失败正在断开

4.        配置网关和路由,直接套用下面的脚本即可,只需修改一下route add的部分

#!/bin/sh

# udhcpc script edited by Tim Riker <Tim@Rikers.org>

[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1

RESOLV_CONF="/etc/resolv.conf"
[ -n "$subnet" ] && NETMASK="netmask $subnet"

# return 0 if root is mounted on a network filesystem
root_is_nfs() {
	sed -n 's/^[^ ]* \([^ ]*\) \([^ ]*\) .*$/\1 \2/p' /proc/mounts |
	grep -q "^/ \(nfs\|smbfs\|ncp\|coda\)$"
}

have_bin_ip=0
if [ -x /sbin/ip ]; then
  have_bin_ip=1
  BROADCAST="broadcast +"
fi

[ -n "$broadcast" ] && BROADCAST="broadcast $broadcast"

case "$1" in
	deconfig)
		if [ -x /sbin/resolvconf ]; then
			/sbin/resolvconf -d "${interface}.udhcpc"
		fi
		if ! root_is_nfs ; then
            if [ $have_bin_ip -eq 1 ]; then
                /sbin/ip addr flush dev $interface
                /sbin/ip link set dev $interface up
            else
                /sbin/ifconfig $interface 0.0.0.0
            fi
		fi
		;;

	renew|bound)
        if [ $have_bin_ip -eq 1 ]; then
            /sbin/ip addr add dev $interface local $ip/$mask $BROADCAST
        else
            /sbin/ifconfig $interface $ip $BROADCAST $NETMASK
        fi

		if [ -n "$router" ] ; then
			if ! root_is_nfs ; then
                if [ $have_bin_ip -eq 1 ]; then
                    while /sbin/ip route del default dev $interface 2>/dev/null ; do
                        :
                    done
                else
                    while /sbin/route del default gw 0.0.0.0 dev $interface 2>/dev/null ; do
						:
                    done
                fi
			fi

			metric=10
			for i in $router ; do
                #if [ $have_bin_ip -eq 1 ]; then
                #        /sbin/ip route add default via $i metric $metric
                #else
                #        /sbin/route add default gw $i dev $interface metric $metric 2>/dev/null
                #修改这句话即可
                /sbin/route add -host $(希望路由的ip) gw $i dev $interface metric $metric 2>/dev/null	#i是网关
				#fi
                metric=$(($metric + 1))
			done
		fi

		# Update resolver configuration file
		R=""
		[ -n "$domain" ] && R="domain $domain
"
		for i in $dns; do
			echo "$0: Adding DNS $i"
			R="${R}nameserver $i
"
		done

		if [ -x /sbin/resolvconf ]; then
			echo -n "$R" | /sbin/resolvconf -a "${interface}.udhcpc"
		else
			echo -n "$R" > "$RESOLV_CONF"
		fi
		;;
esac
exit 0

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Linux系统中连接WiFi,一般有以下几个步骤: 1. 扫描WiFi网络 在Linux系统中,可以使用命令行工具或者图形界面工具扫描周围的WiFi网络。例如,使用命令行工具iwlist,可以使用以下命令扫描可用的WiFi网络: ``` sudo iwlist wlan0 scan ``` 其中,wlan0为无线网卡的名称,可以根据具体情况进行修改。 2. 配置WiFi网络参数 扫描到WiFi网络后,需要配置网络参数,包括网络名称(SSID)、密码等。可以使用命令行工具或者图形界面工具进行配置。以命令行工具为例,可以使用以下命令配置WiFi网络: ``` sudo nano /etc/wpa_supplicant/wpa_supplicant.conf ``` 在打开的文件中,可以添加以下内容: ``` network={ ssid="WiFi Network Name" psk="WiFi Password" } ``` 其中,WiFi Network Name为WiFi网络的名称,WiFi Password为WiFi网络的密码。根据具体情况修改后保存文件。 3. 启动WiFi连接 配置WiFi网络参数后,需要启动WiFi连接。可以使用命令行工具或者图形界面工具启动连接。以命令行工具为例,可以使用以下命令启动连接: ``` sudo ifdown wlan0 sudo ifup wlan0 ``` 其中,wlan0为无线网卡的名称,可以根据具体情况进行修改。 4. 检查连接状态 启动WiFi连接后,需要检查连接状态,确保连接成功。可以使用命令行工具或者图形界面工具检查。以命令行工具为例,可以使用以下命令检查连接状态: ``` iwconfig ``` 命令输出中,可以看到wlan0的连接状态,以及连接WiFi网络名称等信息。 以上是在Linux系统中连接WiFi的基本步骤,希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值