连接一个无线网络(例如一个当交换机的无线AP),然后ADSL拨号上网。这一个在Windows下很简单的事情,在Linux下却变得稍微有点麻烦,甚至让人不知所措。今天有空在Fedora下捣鼓了一把,发现其实相当简单,只不过得通过命令行式的操作而已,下面就拿来和大家分享一下。
首先用NetworkManager(或者什么别的网络管理工具)连接到无线AP,终端下运行iwconfig看看无线网络介面卡的名字(如下图所示),例如我这里是wlp2s0。
继续终端下运行(Red Hat系发行版基本还在用rp-pppoe):
sudo pppoe-setup
Debian/Ubuntu等运行:
sudo pppoeconf
在提示选择PPP使用的网络介面卡(interface)时,输入无线网络介面卡的名字,如我这里就是输入wlp2s0。
再确认一下wlp2s0是否已经UP了,终端下运行ifconfig(不是iwconfig)看看wlp2s0的flags是否包含UP,如下图所示。
如果没有UP的话,需要终端下运行:
sudo ifconfig wlp2s0 up
激活它。然后就可以终端下运行:
sudo pppoe-start
Debian/Ubuntu应该是运行下面这条命令:
sudo pon dsl-provider
拨完号用ifconfig命令看看是否已经有ppp0连接了吧。
附注:
如果需要PPP自动协商获取IPv6地址的话,需要在/etc/ppp/options里加上一行:
+ipv6
9 responses to “Linux下连接无线网络后拨号(即PPP over WiFi)”
您好,我想问几个问题:
1. +ipv6 设置后可以自动获取IPv6地址?这里是不是添加了一个邻居发现的广播包?
2. ubnt/Openwrt 等路由中继或者桥接的方式连接 Chinanet,用PPPoe拨号不能成功,不知道是什么的问题。。
1. 恩,可以获取IPv6地址的,而且新的发行版应该默认配置就打开了ipv6了。我对TCP/IP不了解,不过+ipv6就是让设备去寻找IPv6地址,邻居广播的地址应该也是会被拿来的。
2. 先确定路由中继是否配置正确,记得关闭路由的NAT,另先在Windows下测试能不能拨号。
额,为什么要关掉NAT?
你不关闭NAT的话,怎么中继上游的地址?做桥接和中继本来就是要关掉NAT的,不然连接的设备获得的是该路由的子网地址,而不是上游设备的网络地址。
啊!太谢谢了,哎,看来以后是多要在网上问问人啊。
茅塞顿开。
用Google能搜到当天发布的文章。。
话说之前有人在opensuse的社区问过,但是没有确切的解决办法。。
什么叫用Google能搜到当天发布的文章?
目前看来是只有终端下用pppoe-start才可以。
每次都要这样来一遍也够蛋疼的了,不知道开发者能不能解决这个问题,,记得很久前我在网上问过这个问题,结果被群起而攻我,,,每个人都是卫道士,不承认linux有不好的地方,还说哪有这么奇葩的上网方式,,,不管怎样,即使解决了,那时我也用不到了,,,
这个就算报上去当bug了,解决周期也很长,除非你有空自己写一个patch……