Raspberry pi設置自動撥號,搭建無線路由環境

Raspberry pi設置自動撥號,搭建無線路由環境


  • 前言 

    raspberry pi(樹莓派), 是一款針對電腦業余愛好者、教師、小學生以及小型企業等用戶的迷你電腦,由于可以燒錄Linux操作系統,因此可以衍生出各種各樣的使用途徑,諸如控制版,爬蟲機器,個人vps,門禁系統…..本文主要介紹如何在raspberry pi上面完成pppoe撥號上網功能,以及如何利用raspberry pi完成路由轉發功能,進而將其作為一個家用無線路由器來使用。


  • 準備環境

    1. raspberry pi 三代 b+版
    2. Kali Linux 鏡像,點此鏈接下載最新鏡像
    3. 一款Kali Linux支持的,擁有AP模式的USB網卡, 可以參考此鏈接
  • 燒錄Kali Linux系統到SD卡片(此處略過)

    在windows上面,我們可以使用 Win32DiskImager工具進行鏡像的燒錄;在Linux宿主系統上面,可以利用dd命令直接將img鏡像dump到sd卡里面,例如: 
    root@kali:~ dd if=kali-2.1.2-rpi.img of=/dev/sdb bs=512k

  • 安裝必要軟件 
    我們需要在Kali上面安裝pppoe軟件用來撥號,安裝AP軟件將Raspberry pi作為一個無線AP,安裝dhcp軟件用來給客戶端分發IP地址,DNS等信息。

root@kali:~# apt-get install pppoe pppoeconf hostapd udhcpd 
  • 設置撥號 
    在這里,我們使用Raspberry pi的以太網網口接入網線進行撥號設置。在命令行輸入如下指令:
root@kali:~# pppoeconf 

        在這里,會提示相應的配置文件將發生改變,點選Yes。

pppoe1

        下一步會提示在撥號的偏好設定,點選Yes。

pppoe2

        下一步會提示輸入撥號的用戶名,直接輸入然后點擊OK。

pppoe3

        下一步會提示輸入撥號密碼,直接輸入然后點擊OK。

pppoe4

        下一步會確認是否將ISP供應商提供的DNS信息寫入配置,選Yes。

pppoe5

        下一步會提示修改ppp接口的MTU大小,選擇Yes。

pppoe6

        下一步提示是否在開機啟動的時候就進行ppp撥號,選擇Yes。

pppoe7

        下一步提示是否現在進行撥號連接,選擇Yes。

pppoe8

        撥號成功之后,利用ip命令查看ppp情況:

root@kali:~# ip a s ppp0
5: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1488 qdisc pfifo_fast state UNKNOWN group default qlen 3
    link/ppp
    inet 10.12.6.137 peer 10.12.0.1/32 scope global ppp0
       valid_lft forever preferred_lft forever

root@kali:~# ip r s t main
default dev ppp0 scope link
10.12.0.1 dev ppp0 proto kernel scope link src 10.12.6.137
20.20.20.0/24 dev wlan1 proto kernel scope link src 20.20.20.1

        可以看到,已經撥號獲取地址,ping一下 偉大的百度 試試……

root@kali:~# ping -c 3 www.baidu.com
PING www.a.shifen.com (119.75.217.109) 56(84) bytes of data.
64 bytes from 119.75.217.109 (119.75.217.109): icmp_seq=1 ttl=55 time=4.33 ms
64 bytes from 119.75.217.109 (119.75.217.109): icmp_seq=2 ttl=55 time=4.18 ms
64 bytes from 119.75.217.109 (119.75.217.109): icmp_seq=3 ttl=55 time=4.06 ms

--- www.a.shifen.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 4.064/4.193/4.333/0.122 ms

        至此,pppoe撥號配置完畢。

  • 無線熱點(AP)配置 
    首先查一下所用的無線網卡是否支持AP模式,我這里的無線網卡的標識為phy1, wlan1,可以看到,該網卡支持AP模式:
root@kali:~# iw phy1 info | grep -i ap
                 * AP
                 * AP/VLAN
                Capabilities: 0x172
                 * start_ap
                 * set_noack_map
                 * set_qos_map
                 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * AP/VLAN
                 * #{ AP, mesh point } <= 8,
        HT Capability overrides:
        Device supports AP scan.

       下一步,編輯/etc/hostapd/hostapd.conf文件:

interface=wlan1 #使用的接口名稱 
ssid=Raspberry_AP #AP的ssid名稱 
hw_mode=g   #操作模式為IEEE 802.11g 
channel=11      #設置頻段為11 
macaddr_acl=0 #啟用mac地址白名單模式 
auth_algs=1 #定義802.11鑒權算法為Shared Key Authentication 
ignore_broadcast_ssid=0 #關閉broadcast_ssid功能 
wpa=2 #采用wpa2標準 
wpa_passphrase=raspberrypi  #密碼 
wpa_key_mgmt=WPA-PSK #使用wpa2-psk類型進行加密 
wpa_pairwise=TKIP   #加密算法 
rsn_pairwise=CCMP #加密算法 

        編輯完畢之后,利用如下命令啟動hostapd:

root@kali:~# /usr/sbin/hostapd -B -P /run/hostapd.pid \
 /etc/hostapd/hostapd.conf
  • 配置DHCP功能 
    編輯/etc/udhcpd.conf文件,修改如下內容:

# Sample udhcpd configuration file (/etc/udhcpd.conf)

# The start and end of the IP lease block

start           20.20.20.2      #default: 192.168.0.20
end             20.20.20.20     #default: 192.168.0.254


# The interface that udhcpd will use

interface       wlan1           #default: eth0

        配置完畢之后,啟動udhcpd服務:

root@kali:~# udhcpd /etc/udhcpd.conf
  • 開啟NAT轉發功能 
    在Raspberry pi上面開啟NAT功能,以實現路由轉發。

root@kali:~# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
root@kali:~# iptables -t filter -A FORWARD -i ppp0 -o wlan1 -m state --state RELATED,ESTABLISHED -j ACCEPT
root@kali:~# iptables -t filter -A FORWARD -i wlan1 -j ACCEPT
  • 連接測試 
    通過本地windows連接Raspberry_AP,并用本地cygwin嘗試連接 偉大的百度……測試連通成功,至此Raspberry pi已經可以作為家庭路由器進行工作了!

pppoe9

[jiangche00.jiangche00-PC] ? ping www.baidu.com

正在 Ping www.a.shifen.com [119.75.217.109] 具有 32 字節的數據:
來自 119.75.217.109 的回復: 字節=32 時間=5ms TTL=54
來自 119.75.217.109 的回復: 字節=32 時間=6ms TTL=54
來自 119.75.217.109 的回復: 字節=32 時間=6ms TTL=54
來自 119.75.217.109 的回復: 字節=32 時間=11ms TTL=54

119.75.217.109 的 Ping 統計信息:
    數據包: 已發送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
    最短 = 5ms,最長 = 11ms,平均 = 7ms

原創文章,作者:jiangche00,如若轉載,請注明出處:http://www.www58058.com/72057

(0)
jiangche00jiangche00
上一篇 2017-03-28
下一篇 2017-03-28

相關推薦

  • Linux系統的磁盤管理

    linux磁盤及文件系統管理 磁盤分區及文件系統管理 RAID設備 LVM: 磁盤的動態編輯管理 CPU, memory(RAM), I/O I/O設備: Disks, Ethercard (網卡) Disks: 實現持久存數數據 接口類型: IDE(ata): 并口  理論速度: 133MB/s SCSI: 并口 640MB/s SATA: 串口…

    Linux干貨 2016-08-29
  • 馬哥教育網絡班22期+第八周課程練習

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。    網橋:工作在OSI模型的數據鏈路層,將兩個局域網連起來,根據MAC地址來轉發幀,可以看作是一個“低層的路由器”(路由器工作在OSI模型的網絡層,根據網絡地址如IP地址進行轉發)。它可以有效地聯接兩個LAN,使本地通信限制在本網段內,并…

    Linux干貨 2016-11-17
  • 命令read

    read命令是一個bash命令,它用于從鍵盤或標準輸入中讀取文本.我們可以使用read以交互的形式讀取來自用戶的輸入.并且read還提供一種不需要按回車就能夠輸入參數的方法. read可以從標準輸入中讀取單獨的一行,或者使用-u選項,從文件描述符FD中讀取.并且這單獨的行被分隔成多個域,第一個詞被賦值給第一個變量,第一個賦值給第二個變量,以此類推,直到剩下的…

    Linux干貨 2016-08-12
  • 馬哥教育網絡班22期+第4周課程練習

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。     [root@director2 ~]# cp -a /etc/skel /home/tuser1   &n…

    Linux干貨 2016-08-29
  • 3.用戶和組管理

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [root@localhost ~]# who root     tty1         2016-12-…

    Linux干貨 2017-07-16
  • 獲取linux命令幫助的方法

    1.help command 適用于內建命令。 2.command -hlep 適用于外部命令。 3.info command 適用于外部命令。 4.man command 適用外部命令和內建命令。     man幫助命令分章節             centos7:man 1…

    Linux干貨 2017-08-19

評論列表(1條)

  • renjin
    renjin 2017-04-05 10:45

    剛剛開始就寫這么高深的內容,挺不錯,繼續加油,排版也都很不錯

欧美性久久久久