把你的Linux變成無(wú)線基站服務(wù)器
目前Linux愛(ài)好者都知道如何正確的進(jìn)行無(wú)線網(wǎng)卡的配置,但是如何進(jìn)行一個(gè)Linux無(wú)線服務(wù)器的配置呢?在本文中主要向大家介紹了進(jìn)行搭建的基本方法,以及相關(guān)的配置方案。
創(chuàng)建自己的特設(shè)無(wú)線接入點(diǎn)包括以下幾步:
- 用正確的方式來(lái)配置網(wǎng)絡(luò)
- 確保無(wú)線網(wǎng)卡是以特設(shè)模式配置
- 在無(wú)線網(wǎng)卡上提供DHCP 服務(wù)
- 為ip桌面?zhèn)窝b配置防火墻
或許讀者曾經(jīng)閱讀過(guò)如何利用Fedora Core 13來(lái)實(shí)現(xiàn)這種配置。除個(gè)別的配置文件名稱(chēng)不同外,該篇文章敘述的步驟和所有已發(fā)行的主要Linux系統(tǒng)幾乎都兼容。
網(wǎng)絡(luò)配置
要使服務(wù)器成為接入點(diǎn),用戶需要兩個(gè)網(wǎng)站配置。其中一個(gè)提供服務(wù)器的互聯(lián)網(wǎng)接入。可以直接與互聯(lián)網(wǎng)連通也可以通過(guò)一個(gè)NAT路由器來(lái)接通(該步驟不是很重要)。如果使用服務(wù)器來(lái)實(shí)現(xiàn)這種配置,網(wǎng)絡(luò)接口通常是局域網(wǎng);也可以用筆記本來(lái)代替服務(wù)器,從而使用任何接口與網(wǎng)絡(luò)連通。
除網(wǎng)絡(luò)接口外,還需要無(wú)線接口。該篇文章中,假定網(wǎng)絡(luò)接口在服務(wù)器中是以eth0來(lái)識(shí)別,無(wú)線接口是以wlan0來(lái)識(shí)別。為創(chuàng)建該配置,可以使用用戶認(rèn)為最便捷的工具來(lái)建立網(wǎng)絡(luò)接口,沒(méi)必要使用手動(dòng)配置來(lái)建立。至于無(wú)線接口,用戶就需要手動(dòng)了。
配置無(wú)線網(wǎng)卡
將配置轉(zhuǎn)化為配置文件之前,在命令行中為無(wú)線網(wǎng)卡來(lái)建立配置不失為一個(gè)好主意。可以使用iwconfig命令來(lái)完成這項(xiàng)任務(wù)。使用該項(xiàng)命令之前的第一件事就是將無(wú)線網(wǎng)卡設(shè)為通訊模式。下面的命令可以完成該設(shè)置任務(wù):
iwconfig wlan0 mode Ad-Hoc
用戶的無(wú)線網(wǎng)卡只有在別的電腦已設(shè)置成通訊模式的情況下才能與其連通。下一步,用戶的電腦還需要一個(gè)ESSID,該名稱(chēng)是識(shí)別該網(wǎng)絡(luò)的唯一標(biāo)識(shí)符。在所講解的這個(gè)例子中,如果 essid 超網(wǎng)(supernet)已被使用,用戶則可以使用任何essid,前提是在用戶電腦可接觸的范圍內(nèi)該essid還沒(méi)有被使用。下面的命令可以為用戶的電腦設(shè)置一個(gè)ESSID。
iwconfig wlan0 essid supernet
在這種情況下,用戶的無(wú)線網(wǎng)卡應(yīng)具備所有的要求參數(shù),可以使用iwconfig命令來(lái)驗(yàn)證這一點(diǎn)。
[root@sfo ~]# iwconfig wlan0 IEEE 802.11abgn ESSID:"sandernet" Mode:ad-hoc Frequency:2.412 GHz Cell: 96:1E:76:FA:FE:A0 Tx-Power=15 dBm Retry long limit:7 RTS thr:off Fragment thr:off Encryption key:off Power Management:off
下一步,用戶需要為無(wú)線網(wǎng)卡來(lái)指定IP地址配置,可以使用IP地址命令來(lái)完成這項(xiàng)任務(wù),如下所示:
ip address add dev wlan0 192.168.100.1 netmask 255.255.255.0
指定IP地址時(shí),需要確定該地址是唯一的,未被使用的。用戶不需要指定默認(rèn)網(wǎng)關(guān)和DNS服務(wù)器,因?yàn)橛脩舻碾娔X通過(guò)網(wǎng)絡(luò)接口已經(jīng)獲取了這些信息。IP地址指定后,用戶的無(wú)線網(wǎng)卡建立起來(lái)了,能夠從鄰近的電腦上看到無(wú)線接入點(diǎn)。
用戶可以與它鏈接,但此時(shí)還不能獲得IP地址,因?yàn)镈HCP服務(wù)器還沒(méi)有被配置。
DHCP服務(wù)器配置
下一步,用戶要確認(rèn)自己的接入點(diǎn)能夠提交IP地址。為了完成該任務(wù),首先需要使用yum安裝方式來(lái)安裝DHCP。然后,建立一個(gè)名稱(chēng)為/etc/dhcp/dhcpd.conf的配置文件,并使該文件包含以下內(nèi)容:
[root@sfo ~]# cat /etc/dhcp/dhcpd.conf option domain-name "supernet.example"; option domain-name-servers 192.168.1.1; default-lease-time 600; max-lease-time 7200; authoritative; log-facility local7; subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.10 192.168.100.20; option routers 192.168.100.1; }
完成配置后,用戶需要啟動(dòng)DHCP服務(wù)器,并確信它在服務(wù)器重啟后可以自動(dòng)啟動(dòng)。以下的命令可以幫助用戶完成該任務(wù):
service dhcpd start chkconfig dhcpd on
配置防火墻
配置的最后一步是在服務(wù)器上配置NAT。用戶可以使用功能強(qiáng)大的內(nèi)部Linux iptables防火墻來(lái)完成。如果沒(méi)有附加的防火墻配置到用戶的服務(wù)器上,完成該NAT配置是相當(dāng)容易的,但要注意所使用的方法。在Fedora, Red Hat 和 CentOS中,用戶可以使用圖示版本的system-config-firewall工具來(lái)創(chuàng)建防火墻規(guī)則。然而,這種工具使用方便,卻會(huì)破壞已經(jīng)手動(dòng)建好的防火墻配置,因此,最好直接使用該種簡(jiǎn)捷的防火墻配置工具。
使用一個(gè)命令就可以激活用戶服務(wù)器上的NAT:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
該命令中最重要的部分就是-o eth0這個(gè)選項(xiàng)。該選項(xiàng)指定了用戶用來(lái)接通網(wǎng)絡(luò)的的網(wǎng)絡(luò)接口名稱(chēng)。確定該選項(xiàng)表達(dá)了正確的接口名稱(chēng)。
如果其他的防火墻規(guī)則在用戶的服務(wù)器上也是激活狀態(tài)的話,用戶可以用兩項(xiàng)命令行來(lái)確保以下條件的成立:無(wú)線網(wǎng)絡(luò)的流量接通到網(wǎng)絡(luò)上; 防火墻允許關(guān)于該網(wǎng)址流量的回復(fù)返回到服務(wù)器。以下的命令行會(huì)幫助用戶完成該任務(wù):
iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
然后,用戶需要改變/etc/sysconfig/iptables-config。如果用戶給予iptables-config中的以下三個(gè)參數(shù)值是“是(yes)”的話,F(xiàn)edora和它的衍生產(chǎn)品就會(huì)體現(xiàn)它們的一項(xiàng)優(yōu)良功能:減少在命令行中輸入的iptables行:
IPTABLES_MODULES_UNLOAD IPTABLES_SAVE_ON_STOP IPTABLES_SAVE_ON_RESTART
還有一件事需要完成,用戶的電腦要提出一個(gè)IP數(shù)據(jù)包,這樣一來(lái),用戶電腦就可以充當(dāng)一個(gè)路由器。為實(shí)現(xiàn)這一點(diǎn),可以把以下的命令行放入/etc/sysctl.conf中:
net.ipv4.ip_forward=1
到此,配置已經(jīng)完成了,用戶可以重啟電腦,來(lái)檢驗(yàn)一下所有的東西是否如預(yù)期的進(jìn)行。然后,用戶就可以使用自己的特設(shè)接入點(diǎn)了。更多無(wú)線技術(shù)請(qǐng)參考51CTO組網(wǎng)頻道。
【編輯推薦】