2019年2月23日 星期六

設定樹莓派區網固定 IP

年前把手上各款樹莓派板子的 Raspbian 都升為最新版後就擱下來, 沒再進一步處理連網等設定. 為了區網內存取方便, 我都是將樹莓派的 WiFi 連網 IP 固定設為 192.168.2.192 (因我的信舟無線基地台網址是 192.168.2.1), 不使用 DHCP 指派, 這樣比較好記. 參考之前的文章 :

設定樹莓派 WiFi 無線網卡固定 IP 的方法

設定固定 IP 程序如下 :

1. 顯示原來的網路介面設定 :

pi@raspberrypi:~ $ sudo cat /etc/network/interfaces 
# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d 


2. 編輯 interfaces 檔 :

預設只有一行 (設定目錄). 然後用 nano 編輯一個 interfaces 檔案如下, 此檔案會存在預設工作目錄 /home/pi 底下 :

pi@raspberrypi:~ $ nano interfaces 
pi@raspberrypi:~ $ cat interfaces 
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
auto wlan0
iface wlan0 inet static
address 192.168.2.192   
gateway 192.168.2.1
netmask 255.255.255.0
network 192.168.2.1
broadcast 192.168.2.255
wpa-ssid "EDIMAX-tony"
wpa-psk "blablabla"

檔案中第一行就是上面原始 /etc/network/interfaces 檔的內容, 其中 address 就是設定我們想要的區網固定 IP; gateway 與 network 同樣設為 WiFi 基地台的網址即可; 而 netmask 與 broadcast 用 ifconfig 就可查到.


3. 覆蓋預設之 /etc/network/interfaces 檔 :

將此檔案以管理員身分複製到 /etc/network/interfaces 覆蓋原來的檔案 :

pi@raspberrypi:~ $ sudo cp interfaces /etc/network/interfaces 

然後用下列指令重啟網路介面或重開機即可 :


4. 重啟網路介面或重開機 :

pi@raspberrypi:~ $ sudo /etc/init.d/networking restart 
用 ifconfig 查詢可知樹莓派區網 IP 已改為 192.168.2.192 了 :

pi@raspberrypi:~ $ ifconfig 
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 11  bytes 602 (602.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 11  bytes 602 (602.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.192  netmask 255.255.255.0  broadcast 192.168.2.255
        inet6 fe80::a57:ff:fe16:880c  prefixlen 64  scopeid 0x20<link>
        ether 08:57:00:16:88:0c  txqueuelen 1000  (Ethernet)
        RX packets 63  bytes 11479 (11.2 KiB)
        RX errors 0  dropped 54  overruns 0  frame 0
        TX packets 80  bytes 14188 (13.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

這樣做的好處是以後用筆電透過 WiFi 網路連線樹莓派時只要固定連線 192.168.2.192 即可, 畢竟家中連線基地台的終端設備有手機平板等, 大家從 DHCP 獲得的 IP 是動態的, 樹莓派只要重開機所獲得的 IP 每次都不一樣的話就很麻煩.


2019-03-31 補充 :

上面的作法在新版 Raspbian 可能不管用了, 參考 :

# 樹莓派 Wifi 固定 IP 的新作法

2 則留言 :

Josh 提到...

請問有辦法把這個動作還原嗎? 我照著做之後wifi device整個消失不見

小狐狸事務所 提到...

Rasbian 升版後改用下列作法 :

樹莓派 Wifi 固定 IP 的新作法
http://yhhuang1966.blogspot.com/2019/03/wifi-ip.html