我正在运行 Debian v8(清除了 systemd 并安装了 systemV...工作正常)。这是一个干净的安装(Debian v7曾经在这台机器上) 一天内多次断电后硬盘出现故障。我从备份中恢复了所有配置文件,即:网络、squid、proftp、mysql、apache、iptables 等。
这台 Debian 8 机器与内部网络上的其他服务器(samba、serviio、ftp、mysql)交互(或者应该是)。我遇到的问题是,互联网(以及与本地网络上其他计算机的连接)在几秒钟后消失,尽管我可以 ping 通无线卡 (wlan0) 和以太网卡 (eth0),但我无法 ping 通路由器在这台 Debian 8 机器上。
我通过 br0 在 wlan0 和 eth0 之间设置了 hostapd,以便人们无线访问互联网。当我检查并重新检查备份中的所有内容时,我对问题可能是什么感到困惑。
这个 Debian v8 机器的网络配置是这样的:
wlan0 -----> br0 -------> eth0 -----> router ----> internet
(10.0.0.5)-> (10.0.0.4)-> (10.0.0.3)->(10.0.0.2)-> internet
____^___ (All local machines connect through wlan0)
Bind9 工作正常。界面表现良好。
就像我说的,我可以毫无问题地 ping 10.0.0.5/4/3,但无法 ping 路由器或网络上的任何其他计算机。网络为 10.0.0.0/24,网络掩码为 255.255.255.0。
这是我的路由表:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.0.0.2 0.0.0.0 UG 0 0 0 eth0
link-local * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.255.0 U 0 0 0 br0
link-local * 255.255.255.0 U 0 0 0 wlan0
这是 iptables:
# Generated by iptables-save v1.4.21 on Thu Jun 11 10:35:35 2015
*mangle
:PREROUTING ACCEPT [403:63515]
:INPUT ACCEPT [385:56330]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [432:59142]
:POSTROUTING ACCEPT [432:59142]
COMMIT
# Completed on Thu Jun 11 10:35:35 2015
# Generated by iptables-save v1.4.21 on Thu Jun 11 10:35:35 2015
*filter
:INPUT ACCEPT [385:56330]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [432:59142]
#-A INPUT -i eth0 -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
-A FORWARD -s 10.0.0.0/24 -i eth0 -o wlan0 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Thu Jun 11 10:35:35 2015
# Generated by iptables-save v1.4.21 on Thu Jun 11 10:35:35 2015
*nat
:PREROUTING ACCEPT [19:7421]
:INPUT ACCEPT [1:236]
:OUTPUT ACCEPT [55:3490]
:POSTROUTING ACCEPT [0:0]
# Below is for routing local network http requests (port 80) to squid 3128
#-A PREROUTING -s 10.0.0.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
#-A PREROUTING -i wlan0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.0.5:3128
-A POSTROUTING -j MASQUERADE
COMMIT
# Completed on Thu Jun 11 10:35:35 2015
这是我的接口文件:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
iface eth0 inet static
address 10.0.0.3
netmask 255.255.255.0
network 10.0.0.0
hwaddress e7:df:12:00:1g:63
broadcast 10.0.0.255
dns-nameservers 10.0.0.5 10.0.0.2
dns-search 10.0.0.5 10.0.0.2
gateway 10.0.0.2
auto eth0
iface wlan0 inet static
mode infrastructure
wireless-mode master
wireless-essid "fever"
wireless-channel 1
address 10.0.0.5
netmask 255.255.255.0
network 10.0.0.0
gateway 10.0.0.2
hwaddress 1d:dd:b2:2a:ae:1d
broadcast 10.0.0.255
dns-nameservers 10.0.0.5 10.0.0.2
dns-search 10.0.0.5 10.0.0.2
auto wlan0
## Setup the bridge
iface br0 inet static
bridge-ports wlan0 eth0
address 10.0.0.4
netmask 255.255.255.0
network 10.0.0.0
gateway 10.0.0.2
dns-nameservers 10.0.0.5 10.0.0.2
dns-search 10.0.0.5 10.0.0.2
auto br0
这是我的 hostapd.conf:
interface=wlan0
bridge=br0
driver=nl80211
country_code=ZA
ssid=fever
hw_mode=g
channel=6
wpa=2
wpa_passphrase=123abc123
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
auth_algs=1
macaddr_acl=0
ignore_broadcast_ssid=0
Network-Manager(因此称为 Gnome)的所有痕迹均已与 wicd 一起清除。我有 isc-dhcp-server,它在 wlan0 上提供 IP 地址。
我注意到 /etc/resolv.conf (指向 /etc/resolvconf/run/resolv.conf)有时会消失,当它在那里时它是空的。
如果我禁用 hostapd 并删除 br0 我就可以访问互联网。因此,如果我启用 hostapd 和 br0,则某些地方会产生一些干扰,如果启用它们,它们只能工作几秒钟。
我没有 dhcp-client ...我安装了 wpa_supplicant 和普通的无线工具。
答案1
我假设您的 IP 配置与之前的安装(debian 7)相同,因此它现在应该像以前一样工作。然而,令我困惑的是它确实有效,因为你有 3 条路由到本地 lan - eth0、wlan0 和 br0。
我只会将 IP 绑定到 br0。这应该可以完成您需要的一切,并降低复杂性。不需要 3 个地址都位于同一子网/桥接网络上。
我有类似的设置,我的接口文件看起来更像这样:
...
iface eth0 inet manual
hwaddress e7:df:12:00:1g:63
auto eth0
iface wlan0 inet manual
mode infrastructure
wireless-mode master
wireless-essid "fever"
wireless-channel 1
hwaddress 1d:dd:b2:2a:ae:1d
auto wlan0
## Setup the bridge
iface br0 inet static
bridge-ports wlan0 eth0
address 10.0.0.4
netmask 255.255.255.0
network 10.0.0.0
gateway 10.0.0.2
dns-nameservers 10.0.0.5 10.0.0.2
dns-search 10.0.0.5 10.0.0.2
auto br0
...