歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> linux下用藍牙建立無線網路。( PAN 個人局域網的配置)

linux下用藍牙建立無線網路。( PAN 個人局域網的配置)

日期:2017/2/27 9:22:04   编辑:更多Linux
  BBS討論: http://www.Linuxsir.org/bbs/showthread.PHP?s=&postid=370810 主要內容: 很久沒有給linuxsir貢獻啥技術文章,今天在MSN上看到北南大哥很是不好意思。不寫一個實在對不住版主的名號了。既然要貢獻文章就要寫國內沒有的, 1.用中文Google搜了一下, “linux pan” 好象沒找到相關的技術文章,也許我沒多翻吧。 2.所以決定原創一下,呵呵,原創哦。 3. 置辦設備,買了一個ipaq2210(有內置蘭牙,沒有wifi),一個usb dongle就是usb蘭牙卡。 4. 准備開始寫了哦。 (以上幾件事情真實順序可能有異) 既然是原創就先寫上大名:[email protected] 蘭牙下面的ip無線網路叫pan,蘭牙設備突出個人進距離電子設備的鏈接,用personal也不錯。和我們適用的一般的網路一樣,pan上面也有客戶機,router,hub。不過這些角色都是又蘭牙設備扮演的,而通過適當的設置一個帶有蘭牙adapter的linux box 三個都可以作。 在說這個無線網路之前,先說說怎麼讓linux支持蘭牙。 首先我們找到蘭牙linux的官方網站bluez。sourceforge。net 然後在這個頁面 http://bluez.sourceforge.net/download/download.Html 下載 bluez-libs bluez-utils bluez-sdp bluez-pan 這幾個包。省下的幾個倒數2,3我們用不到,最後一個如果你有XXX硬件的話考慮一下(自己去bluez查查) 然後在http://www.holtmann.org/linux/kernel/ 這個地方下載相應內核的補丁,我的是2.4.20的。 然後把你的內核打補丁,編譯,把蘭牙部分多出來的幾個模塊都選上反正是M,不占地方,如果你不確定具體哪個有用哪個沒用的話。 搞好內核之後逐一安裝上面下載的就個包,按照我list的順序哦。簡單的 ./configure && make && make install 就可以了。 now we can R&R 首先加載內核模塊: modprobe bluez (蘭牙支持) modprobe hci_usb (usb蘭牙設備用的到。) 具體要加什麼模塊可以看看 http://www.holtmann.org/linux/bluetooth/devices.html 找到你的設備需要什麼模塊的支持。 modprobe l2cap modprobe bnep (pan網路設備) 接著調用兩個守護進程。 hcid sdpd 這個時候你可以用bluez-util自帶的工具看看你的設備 hciconfig 如果你的蘭牙裝上了並且被識別,會看到hci0這樣一個設備,如果你看到了花花綠綠的mac地址就是說明這個設備已經啟動了,如果是00:00:00:00:。。。。 hciconfig hci0 up 啟動它,和ifconfig很象吧。呵呵 現在我們可以啟動PAN守護進程了,在開始之前先說說幾個名詞。 1. PANU ( pan裡面的客戶機,就是PAN user了。呵呵) 2. GN 照我的理解就是pan裡面的hub 具體看這個圖: +------+ +------+ +------+ PANU PANU PANU +------+ +------+ +------+ \ / \ / \ / \ / \ / \ / \ / +---------+ GN +---------+ / \ / \ / \ / \ / \ / \ +------+ +------+ +------+ PANU PANU PANU


+------+ +------+ +------+ 3. NAP,network Access point,照我的理解就是可以作pan通向其他網路的router的東西。 這個東西我們會比較需要,結構入圖: +====================+ LAN InfrastrUCture +====================+ +---------+ NAP +---------+ / \ / \ / \ / \ / \ / \ +------+ +------+ +------+ PANU PANU PANU +------+ +------+ +------+ 好了就我的情況來看,我的linux機上面有dsl,插了蘭牙usb,並且已經驅動,我就要把這個機器設置成NAP來使得其他的設備(我的ipaq)可以用蘭牙鏈接到dsl上面。 首先設置我們的linux機為蘭牙的主機,在你的NAP或者GN機器上面要執行這個命令 pand --master 然後,啟動pan的監聽,並且適用NAP pand --listen --role NAP 接著鏈接我的ipaq,這裡的mac地址,你的設備上面怎麼查我就不說了。自己搞定,如果是你linux機器上面的設備hciconfig裡面是可以看到mac地址的。 pand --connect 00:04:3E:41:F2:39(要鏈接的PANU設備的蘭牙mac) --service NAP 到此位置台式機設置告一段落。我配置好了ipaq的pan,並且設定固定ip為10.0.0.2,網關為10.0.0.1,然後搜索鏈接蘭牙設備,很幸運,成功的鏈接到了,BlueZ(我的linux機的蘭牙設備名)設備上面的 group network。 在鏈接建立之後linux裡面會多出一個bnep0的設備這個就是我們蘭牙鏈接的虛擬網卡了。 給他一個ip。 ifconfig bnep0 10.0.0.1 再ifconfig,呵呵多了一個bnep設備吧,用一個最常用的共享鏈接的方法: iptables -t nat -A POSTROUTING -o ppp0 -s 10.0.0.1/24 -j MASQUERADE OK,我的ipaq通過蘭牙可以上網了。 呵呵這裡說說如果是另外一個linux機如何設置,假如我還有一個筆記本,也有一個蘭牙卡。想通過蘭牙上無線網路。 首先需要象前面linux機那樣設置好bluez的支持 然後在你的linux主機上面啟動NAP pand --master pand --listen --role NAP pand --connect xx:xx:xx:xx(你筆記本的蘭牙mac) --service NAP 接著在你的筆記本上面啟動PANU pand --connect 00:37:5C:67:D3:02(你linux主機的蘭牙mac) --service PANU 現在你的兩個機器應該在蘭牙上面連通了,下面建立ip鏈接 在主機 ifconfig bnep0 10.0.0.1 on laptop: ifconfig bnep0 10.0.0.2 設置網關和路由 主機: iptables -t nat -A POSTROUTING -o ppp0(你鏈接internet的網路設備) -s 10.0.0.1/24 -j MASQUERADE 筆記本: /sbin/route add -net default gw 10.0.0.1 netmask 0.0.0.0 metric 1 bnep0 不出意外你的筆記本就可以用蘭牙上無線網路了。 局我研究,usb蘭牙卡有些雜牌是很便宜的,比你在家裡買一個無線router,再加筆記本一個無線網卡要便宜的多。所以如果你有一個筆記本象在家裡上無線,用蘭牙是一個好選擇。呵呵。



主機: iptables -t nat -A POSTROUTING -o ppp0(你鏈接internet的網路設備) -s 10.0.0.1/24 -j MASQUERADE 筆記本: /sbin/route add -net default gw 10.0.0.1 netmask 0.0.0.0 metric 1 bnep0 不出意外你的筆記本就可以用蘭牙上無線網路了。 局我研究,usb蘭牙卡有些雜牌是很便宜的,比你在家裡買一個無線router,再加筆記本一個無線網卡要便宜的多。所以如果你有一個筆記本象在家裡上無線,用蘭牙是一個好選擇。呵呵。



Copyright © Linux教程網 All Rights Reserved