自动切换有线、无线网络

时间:2024-04-17 14:20:12
如果你经常移动你的电脑,你可能会遇到没有网线或者没有无线网络可用的情况。
操作系统在启动时检测计算机的网卡型号并在开机时自动加载驱动模块。默认情况下,操作系统只使用其中的一个网卡,默认情况因计算机而异。如:笔记本一般都同时有无线、有线网卡,大部门笔记本默认使用有线网卡,但也有一些笔记本默认使用无线网卡,如NEC的某些款笔记本。
如果默认使用有线网卡,而在使用过程中拔掉网线,那么操作系统不会自动切换到无线网络(假设此时无线网络可用),你所有的数据报还会阻塞在有线网卡处,进行重传直至超时出错,即:你上不去网了。
如果你想使用无线网络来继续上网,两个办法:
1,禁用掉有线网卡。
     禁用掉有线网卡,可用的自然只剩下无线网卡了(假设你只有这2个网卡);
2,重启计算机。
     计算机在重启时会检测网卡的连通性,然后使能能够连通的网卡。网卡的连通性是通过物理连通性来判断出来的,你插上网线,网卡就处于连通状态。简单说,如果你一个计算机插上2个网卡,一个插网线,一个没插网线,那么系统重启后的默认网卡就是插网线的那个网卡。但是如果两个网卡都插网线、或者两个网卡都没插网线,那么系统选择默认网卡的规则我还不知道,如果你知道,麻烦告诉我:dpinglee@gmail.com

继续开头的状况:你也许希望在插入网线或无线网络可用时网络能够自动连上
在这里你可以找到帮助你实现这个功能的一些工具。
fplugd是 一个在 插入或拔出网线时启动或停止网络连接的 程序。它也可以检测你的 无线网卡和AP的 关联,或者是 在 AP进入范围时检测。
使用 ifplugd 启动(triggering)网络设置
ifplugd 守护进程根据相关的硬件有没有接入网络来激活或关闭接口。这个程序能够检测网线是否已经插入或无线网卡(Wi-Fi)是否能访问 AP(虽然 waproamd 比较适合后一种情况)。当 ifplugd 发现连接状态改变时,它能运行一个代理脚本,缺省会呼叫 ifup 或 ifdown。
你可以安装这个服务( Ifplugd ),使得当网络接入的时候自动配置网络,当网络断开的时候自动取消配置。这对于笔记本电脑这样的使用移动式的网络适配器的情况很有用,因为他只会在网络实际接入的时候才会配置网络接口。另外一个可能会用得着它的情况是,你需要重启你的网络,可是你既不想重启电脑也不想在 shell (终端)中配置。
在默认情况下,它会检查 eth0 设备。更改这个设置(以及更改其他设置,比如等待时间),可以编辑 /etc/ifplugd/ifplugd.conf 。
ifplugd的 配置相当简单。配置文件放置在 /etc/conf.d/net中。运行man ifplugd以获得详细的 变量信息。同时,请查看/etc/conf.d/net.example以获得更多例子。
运行这个命令来启动它:
# /etc/rc.d/ifplugd start
或者将它加入/etc/rc.conf 的 DAEMONS 列表,这样它就能开机自动启动了。

还有一些工具如netplug可供选择。netplug是 ifplugd的 轻量级替代者,但是它依赖于系统内核网络驱动才能正常工作,兼容性稍差。