Ethernet
使用命令行共享到乙太網的 wlan 連接
我有一個 wlan1 連接,我想與 LAN 上的其他電腦共享(通過乙太網 - eth0)。由於這在某種程度上是一個臨時解決方案,因此我希望通過腳本來完成,這樣我就不會觸及主機的網路配置文件(即,如果我願意,我將在每次重新啟動後執行此腳本)。
問題是我無法橋接 wlan1 和 eth0。
sudo brctl addif br0 eth0 wlan1
我看到需要啟用 4addr:
iw dev wlan1 set 4addr on
確實,我可以將 wlan1 添加到網橋,但是……我失去了 wifi 連接!我看到這也是一個常見問題:(在2中,解決方案說要這樣做
iw dev wlan0 interface add wds.wlan0 type managed 4addr on ip link set dev wds.wlan0 addr $ADDR ip link set dev wds.wlan0 up
其中 $ADDR 是“路由器中配置的 WDS 設備地址”。我不明白那是什麼?我的wlan1網卡的MAC地址?然後我應該如何創建我的橋樑?以下不起作用:
sudo brctl addbr br0 sudo brctl addif br0 eth0 wds.wlan0
或者在這裡,他們建議安裝
ebtables
。但是該頁面沒有解釋我應該如何創建橋樑,並且他們修改/etc/network/interfaces
了我不想做的事情……那麼,有人可以幫我正確創建那座橋嗎?
到目前為止,我的 wifi 腳本是:
#!/bin/bash # this is for wlan1 - wifi connection pkill dhclient pkill wpa_supplicant ip link set dev wlan1 down ip addr flush dev wlan1 iwconfig wlan1 essid "mywifi" iwconfig wlan1 frag 2432 iwconfig wlan1 rts 2432 ip link set dev wlan1 up iwconfig wlan1 rate 1M dhclient -v wlan1 # this is my IP address on my LAN ifconfig eth0 192.168.0.8 netmask 255.255.255.0
我正在執行 Linux Mint 17.1 主機。我已經安裝了
bridge-utils
。
是否可以繞過橋接部分並
iptables
改為使用?如果是這樣,您可以設置源 NAT 來偽裝從 wlan 介面傳出的流量。
首先,您需要啟用 IP 轉發:
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
接下來,您需要偽裝流出的流量:
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
讓 LAN 連接的主機使用 192.168.0.8 作為其預設網關,並讓您的機器使用 wlan0 介面連接的網關作為預設網關。