本文转载自:http://rickgray.me/2015/08/03/useful-command-tool-for-wifi-connection.html

最近网购了一套Raspberry-Pi2,用来跑一些神秘脚本。因为树莓派是基于 ARM 架构的,所以给它装上了 Ubuntu专版,对于终端下基本的 iwconfig 命令可能对现代的多种加密方式的 wifi 已经不太适应了,取而代之的是支持多种加密方式(WEP, WPA and WPA2等)的 wpa_supplicant 更符合我的需求。

一、安装

Debian/Ubuntu 下直接使用 sudo apt-get install wpa_supplicant 来进行安装,CentOS 下使用 sudo yum install wpa_supplicant 来安装。

二、配置并使用

使用 iwconfig 命令来查看当前机器上被识别出来的无线设备,例如这里我的树莓派上插入了一块腾达的USB无线网卡,则在系统中会得到识别。

然后在 /etc/wpa_supplicant/ 目录下或者其它目录建立一个 wifi 的配置文件 example.conf,这里我创建在 /etc/wpa_supplicant/example.conf,并写入如下配置内容:

ctrl_interface=/run/wpa_supplicant
update_config=1

这样配置是为了后面可以使用 wpa_cli 命令来实时地扫描和配置网络,并能狗保存配置信息。

配置文件建立完毕后,运行 wpa_supplicant 命令来启动无线网络接口,并加载相关配置文件。

sudo wpa_supplicant -B -D nl80211 -i wlan0 -c /etc/wpa_supplicant/example.conf

可以看到提示初始化成功,-B参数表示后台运行。如果遇到驱动不支持所插入的无线网卡,可选择wired或者wext等,具体详情可使用 wpa_supplicant -h 进行查看。

初始化完毕后,即可运行 sudo wpa_cli 来实时地配置网络。进入 wpa_cli 的交互界面后,它会自动地扫描周围的无线网络,你也可以使用 scan 命令进行手动扫描:

扫描完成后,使用 scan_result 打印扫描结果,选择你要连接的无线网络的 SSID(名称),然后新建一个网络配置信息(0代表了配置编号):

> add_network

然后对编号为 1 的网络配置信息进行设置:

> set_network 1 ssid "Wifi名称"
> set_network 1 psk "Wifi密码"
> set_network 1 key_mgmt "Wifi的加密方式(WPA-PSK/WPA2-PSK)"

设置好后,即可使用 enable_network 1 来启用该配置并使用 save_config 来保存当前配置至 /etc/wpa_supplicant/example.conf

这是可以再次使用 iwconfig 命令来查看无线网卡信息,可以看到已经连接上了对应的 Wifi 并有了相应的信息。

一般 Wifi 的 IP 地址获取都使用了 DHCP 协议,因此我们还需要手动 dhclient wlan0 来自动协商获取 IP 地址。

下次启动时可以直接使用现有配置来对之前的 Wifi 进行连接,当然不要忘了使用相应命令来进行 DCHP 协商获取 IP 地址。

sudo wpa_supplicant -B -D nl80211 -i wlan0 -c /etc/wpa_supplicant/example.conf
sudo dhclient wlan0

至此就大功告成了,终端下连接 Wifi 就是这么简单 :)

wpa_supplicant - 强有力的终端 wifi 配置工具【转】的更多相关文章

  1. Linux下Wi-Fi配置工具2

    上回说到,linux下面的Wi-Fi配置工具,说是江湖多事,风起云涌...嗯,这回是真的要动手配置了.各种麻烦啊,想死的心都有了有木有啊. 尝试用iwconfig 话说上回说用iwconfig配置Wi ...

  2. 树莓派学习笔记——USB wifi配置指南

    0 前言     树莓派既能够使用有线网络又能够无线网络,假设使用有线网络不方便的话能够借助USB wifi无线网卡让树莓派也插上无线"翅膀". 可是和使用有线网络即插即用的方式不 ...

  3. 小白自制Linux开发板 五. Debian文件系统制作,以及WIFI配置、交换分区配置

    该片文章将完整记录一个Debian的最小文件系统的生成,以及自定义配置WIFI组件.网络组件和交换分区配置 本文章参考:https://whycan.com/t_4236.htmlhttp://www ...

  4. RASPBERRY PI wifi配置

    Raspberry Pi 手把手教你在树莓派上安装USB无线网卡支持WIFI 树莓派虽然已经有了有线网卡,但是并未配置无线网卡,移动性不够强,好在机器配备了2个USB口,当然要分一个出来给WIFI无线 ...

  5. 树莓派最简易Wifi配置

    树莓派最简易Wifi配置 相信我,连博客都会偷懒写个最简易给你看 前提,只有一根网线没有网络的前提下进行的. 基于Win10系统和树莓派2015-05-05-raspbian-wheezy.img测试 ...

  6. huhamhire-hosts — Hosts文件自动配置工具

    https://www.anotherhome.net/1376 推荐配合EasyGoAgent使用: EasyGoAgent — 开箱即用的GoAgent Update 2015.5.15 数据文件 ...

  7. 基于终端的日志工具logview

    概述 logview是一个Shell脚本编写的基于终端的日志工具, 具有终端通知, email通知, 错误信息颜色配置, 以及灵活强大的监控配置. 还可以灵活的配置脚本监控的时间, 以及错误发生时需要 ...

  8. Kali Linux中前十名的Wifi攻击工具

    无 线网络的攻与防一直是比较热门的话题,由于无线信号可以被一定范围内的任何人接收到(包括死黑阔),这样就给WIFI带来了安全隐患:路由器生产厂商和网 络服务供应商(ISPs)的配置大多是默认开启了WP ...

  9. BatchConfigTool批量配置工具

    海康批量配置工具BatchConfigTool是一款支持设备在线搜索.批量配置参数.批量升级等功能的软件,支持对大批量设备同时进行各参数的配置,极大的简化了操作过程! 软件功能 1.对在线设备进行搜索 ...

随机推荐

  1. tomcat——大致简介和执行过程

    jsp简介 JSP: JAVA Server Page 使用JAVA语言编写的一种在服务器运行的动态页面 JSP = JAVA + HTML JSP 的执行过程 1: 翻译阶段 把JSP源文件翻译成 ...

  2. 【shell】文本处理的一些小技巧

    一.Shell 二.Sed 三.Awk

  3. springmvc ajax传值详解

  4. javascript、jquery 、C#、sqlserveer、mysql、oracle中字符串截取的区别和用法

    下标从0开始 ,并且包括起始位 javascript 中字符串截取 : substring(Number start,Number end) var substr = "liuguangfa ...

  5. MyEclipse 6.5安装maven插件

    一.卸载原有maven插件 MyEclipse 6.5集成了Maven插件,不过有不少bug,用习惯了m2eclipse,不想在这上面浪费时间.要安装m2eclipse,需要先把自带的maven插件卸 ...

  6. java实验(三)——课堂小测

    这次的课堂小测是用以前生成的那些四则运算的代码,然后将这些题目写到一个文件中,再通过这个文件读取题目的信息,每读入一个答案的时候,遇到星号的时候,等待用户输入然后判断输入的答案是否正确,然后输出小一道 ...

  7. jsoup 提取 html 中的所有链接、图片和媒体

    原文:http://www.open-open.com/code/view/1420729333515 package org.jsoup.examples; import org.jsoup.Jso ...

  8. OpenWRT解决因PPPOE丢包导致频繁掉线问题

    其关键在于这两个参数 lcp-echo-interval 1   #发送间隔秒 lcp-echo-failure 5    #5次未响应断开 因为OpenWRT默认的设置为1秒发送一次 5次没有响应就 ...

  9. 用"再生龙"Clonezilla 来克隆Linux系统

      上周公司买了5套高配置PC机来做测试用.上面要装好CentOS 加上一堆工具,有web的,数据库的,还有一些自己开发的工具.有些朋友肯定想,直接用kickstart不就行了,确实.kickstar ...

  10. C++MFC编程笔记day06 MFC向导、MFC画图类使用

    MFC画图    MFC画图类包含画图设备类和画图对象类    1 画图设备类      CDC类-父类是CObject,封装的是一般的画图设备,比如:显示器,            打印机等.    ...