命令行中用于连接 wifi 的所有命令

命令行中用于连接 wifi 的所有命令

我想从 gnome 切换到 Awesome,并且我想在命令行中连接我的 wifi 网络(而不是使用 gnome 工具)。

于是,我在网上搜索了一下,发现了大致相同的方法:

ifconfig wlan0 up
iwconfig wlan0 essid "MyNetwork" key THEHEXAKEY
dhclient wlan0

当我单独运行 Awesome 并执行这些命令时,我陷入了第三个。看起来 DHCP 无法解析(命令继续无休止地运行)。

但是当我在 Xephyr 中运行 Awesome 并执行相同的命令时,dhclient wlan0效果很好。

所以我想 Gnome 做了一些我没有做但我找不到的事情。

有人可以帮助我吗?

答案1

我建议使用wpa_请求者用于所有连接和 AP 关联过程。虽然名称暗示使用 WPA,但它实际上是配置任何类型无线连接的通用工具。

这是连接到无线网络的完整过程,使用wpa_supplicant(我假设wlan0是您的无线设备的名称):

  1. 启动设备:ifconfig wlan0 up

  2. 列出无线网络iwlist wlan0 scan | less并找到您要连接的网络。

  3. 用于wpa_supplicant关联和连接网络。

    a) 创建 的配置文件wpa_supplicant,其中包含有关网络的加密信息。请参阅man wpa_supplicant.conf示例。首先尝试使用最简单的条目。

    b) 运行wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf(以 root 身份运行;假设/etc/wpa_supplicant.conf是配置文件的名称)。如果它有效,请在后台运行它并将输出重定向到某处(我只是将其转储到/dev/null。)

  4. 使用dhclient wlan0 或者 dhcpcd wlan0来获取IP。

  5. 利润!

答案2

看来您可能没有设置频道和“模式”。我使用一个简单的脚本来执行这些 shell 命令:

ifconfig wlan0 down
iwconfig wlan0 mode managed
ifconfig wlan0 up
iwconfig wlan0 channel 3
iwconfig wlan0 key xxxxxxxxxx
iwconfig wlan0 key restricted
iwconfig wlan0 essid "Blah Blah Foo Bar"
iwconfig wlan0 ap xx:yy:zz:aa:bb:cc
sleep 5
dhcpcd -d wlan0

您必须输入密钥和接入点 MAC 地址。这是在 Slackware 13.1 下,我使用的是运行 DD-WRT 的 WRT54GL。令我羞愧的是,我使用的是 WEP 加密。我必须做一些实验,了解何时使用“ifconfig”、何时使用“iwconfig”以及以什么顺序设置 ESSID 和 AP。

答案3

请告诉我们您的路由器使用哪种加密方式?

你也可以尝试世界文化中心,它是一个很棒的连接工具,可以与 ncurses 接口或 gtk(不是 gnome)前端一起使用。您只需运行一次,建立连接,告诉 wicd 记住它并将 wicd 守护进程添加到启动脚本中。之后,您可以忘记您的连接,并且几个月内不再运行前端 - 它就会正常工作。我将它与不同的发行版和不同的桌面环境(或独立的 WM)一起使用,我对此非常满意。

答案4

为了获得更好的线索,在运行之前dhclientiwconfig不要带参数运行。这将显示当前的无线状态,显示您是否与接入点正确关联。

如果您发现 Xephyr 产生了影响,请查看是否iwconfig揭示了这种差异。如果仍然卡住,请发布你的 iwconfig 结果,它应该看起来像http://en.wikipedia.org/wiki/Wireless_tools_for_Linux#iwconfig

相关内容