如何在 Linux 中加入临时无线网络

如何在 Linux 中加入临时无线网络

如何将两台或更多台 Linux 机器加入到同一个 ad-hoc 无线网络?

我有两台 Ubuntu 12.04 笔记本电脑,我想将它们连接起来。按照 Ubuntu 的命令行说明操作维基文档,我将它们配置为同时连接到“我的网络”。但是,运行时iwconfig显示它们使用不同的单元,这显然意味着,即使它们使用相同的 ESSID,它们也是独立的网络。

例如在机器 1 上,我运行:

user@localhost:~$ sudo service network-manager stop
user@localhost:~$ sudo ip link set eth1 down
user@localhost:~$ sudo iwconfig eth1 mode ad-hoc
user@localhost:~$ sudo iwconfig eth1 channel 4
user@localhost:~$ sudo iwconfig eth1 essid 'my network'
user@localhost:~$ sudo iwconfig eth1 key 1234567890
user@localhost:~$ sudo ip link set eth1 up
user@localhost:~$ sudo ip addr add 192.168.1.1/16 dev eth1
user@localhost:~$ iwconfig
lo        no wireless extensions.

eth2      IEEE 802.11abg  ESSID:"my network"  
          Mode:Ad-Hoc  Frequency:2.412 GHz  Cell: 52:9D:A0:90:28:02   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:on

在机器 2 上,我运行:

user@localhost:~$ sudo service network-manager stop
user@localhost:~$ sudo ip link set eth1 down
user@localhost:~$ sudo iwconfig eth1 mode ad-hoc
user@localhost:~$ sudo iwconfig eth1 channel 4
user@localhost:~$ sudo iwconfig eth1 essid 'my network'
user@localhost:~$ sudo iwconfig eth1 key 1234567890
user@localhost:~$ sudo ip link set eth1 up
user@localhost:~$ sudo ip addr add 192.168.1.2/16 dev eth1
user@localhost:~$ iwconfig
lo        no wireless extensions.

eth2      IEEE 802.11abg  ESSID:"my network"  
          Mode:Ad-Hoc  Frequency:2.412 GHz  Cell: B6:D6:92:5D:E5:E4
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:on

为什么它们没有解析为相同的手机号码?我如何让它们使用相同的手机号码?

编辑:即使使用 iwconfig 的 ap 参数明确设置两台机器上的单元号,我仍然似乎无法“连接”到 ad-hoc 网络。尝试 ping 任一 IP 都会导致错误connect: Network is unreachable

答案1

您使用iwconfig正确,正如您所说,问题在于它们没有获得相同的单元 ID。在 ad-hoc 模式下,MAC 地址被分配为单元 ID。您可以通过执行sudo iwconfig eth1 ap B6:D6:92:5D:E5:E4(例如,在 之后sudo iwconfig eth1 essid 'my wlan')强制 wifi 设备使用预定义的单元 ID。

当两个设备创建一个 ad-hoc WLAN 时,它们会广播 bacon,这样节点就可以知道是否有另一个具有相同 essid 的 ad-hoc WLAN,以便它们可以加入(通过更改单元 ID)。通常,您的设备应该已经加入。但这可能是由于您的无线设备的驱动程序或芯片组。在我看来,Atheros 芯片组在无线网络方面的问题较少。

如果该命令仍然不起作用,那么问题与 iwconfig 无关。

顺便说一句,您还应该注意,iwconfig 已过时,您应该改用iw。另一个好工具是wpa_supplicant使用。

相关内容