為什麼連接到我的 wlan0 介面的設備無法與 eth0 設備通信?
我正在嘗試使用以下配置設置執行 Raspbian Jessie 的 Raspberry Pi:
- DHCP 伺服器 (isc-dhcp-server)
- WLAN 接入點 (hostapd)
- 應用程序伺服器(埠 80 上的 HTTP 伺服器)
我的問題是連接到 WLAN AP 的設備無法與 Pi 上執行的網路伺服器通信。連接到乙太網埠的設備可以毫無問題地顯示網頁。
當我將筆記型電腦連接到 AP 並嘗試 ping Pi (
10.10.1.1
) 時,它告訴我它已關閉。但是,我確實得到了一個 IP 地址(例如10.10.1.17
)。當使用乙太網電纜連接到 Pi 時,我會收到一個 IP 地址並且能夠 ping 通 Pi,10.10.1.1
因此在使用有線連接時一切正常。這是我的配置文件:
/etc/dhcp/dhcp.conf
ddns-update-style none; authoritative; log-facility local7; subnet 10.10.1.0 netmask 255.255.255.0 { range 10.10.1.10 10.10.1.100; option routers 10.10.1.1; default-lease-time 3600; max-lease-time 3600; option subnet-mask 255.255.255.0; option broadcast-address 10.10.1.255; option domain-name-servers 8.8.8.8; option domain-name "support.muffag.ch"; }
/etc/default/isc-dhcp-server
INTERFACES="eth0 wlan0"
/etc/網路/介面
source-directory /etc/network/interfaces.d auto lo iface lo inet loopback allow-hotplug eth0 auto eth0 iface eth0 inet static address 10.10.1.1 netmask 255.255.255.0 allow-hotplug wlan0 auto wlan0 iface wlan0 inet static address 10.10.1.2 netmask 255.255.255.0
/etc/hostapd/hostapd.conf
interface=wlan0 driver=rtl871xdrv ssid=Test AP hw_mode=g channel=6 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=Raspberry wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
/etc/default/hostapd
DAEMON_CONF="/etc/hostapd/hostapd.conf"
.
我看到其他人在談論網橋,但我不確定如何使用類似的東西。如何確保連接到接入點的設備可以訪問網路伺服器?
如果您的網路伺服器正在偵聽任何 IP 地址的埠 80(不僅僅是
10.10.1.1
),那麼您可以只使用您連接的介面的網關地址。但是,在您這樣做之前,您首先需要修復您正在使用的地址範圍。您目前的配置說給
10.10.1.0-10.0.1.255
和。這是不好的。您要麼需要為兩個介面提供不同的 IP 地址範圍,要麼使用橋接網路。如果您想輕鬆地允許設備與設備進行通信(就好像它們在同一個網路上),您需要使用網橋。eth0
wlan0``wlan0``eth0
對於使用不同的地址範圍,您的
/etc/network/interfaces
文件應如下所示:source-directory /etc/network/interfaces.d auto lo iface lo inet loopback allow-hotplug eth0 auto eth0 iface eth0 inet static address 10.10.1.1 netmask 255.255.255.0 allow-hotplug wlan0 auto wlan0 iface wlan0 inet static address 10.10.2.1 netmask 255.255.255.0
基本上,
10.10.1.0-10.10.1.255
已分配給eth0
,並且10.10.2.0-10.10.2.255
已分配給wlan0
。您還需要更改/etc/dhcp/dhcp.conf
:ddns-update-style none; authoritative; log-facility local7; subnet 10.10.1.0 netmask 255.255.255.0 { range 10.10.1.10 10.10.1.100; option routers 10.10.1.1; default-lease-time 3600; max-lease-time 3600; option subnet-mask 255.255.255.0; option broadcast-address 10.10.1.255; option domain-name-servers 8.8.8.8; option domain-name "support.muffag.ch"; } subnet 10.10.2.0 netmask 255.255.255.0 { range 10.10.2.10 10.10.2.100; option routers 10.10.2.1; default-lease-time 3600; max-lease-time 3600; option subnet-mask 255.255.255.0; option broadcast-address 10.10.2.255; option domain-name-servers 8.8.8.8; option domain-name "support.muffag.ch"; }
添加了
10.10.2.0/24
網路部分。此時,您應該能夠連接到網路伺服器。如果您連接到
eth0
,則需要使用10.10.1.1
; 如果您連接到wlan0
,則需要使用10.10.2.1
.