通过以太网电缆“管道”Wi-Fi 信号

mbi*_*yle 8 networking wifi ethernet bridge

目前我工作的大楼中的以太网端口已关闭,但 Wi-Fi 工作正常。我有一台支持 Wi-Fi 的笔记本电脑(Ubuntu 14.04 LTS(Trusty Tahr))和一个不支持 Wi-Fi 的工作站(Debian 8(Jessie)),只有一个以太网插头。

是否可以通过以太网电缆将两者连接起来并能够在工作站上获得网络连接?

Bru*_*ger 9

是的,你可以做到这一点,而且它甚至没有那么难。我有一台带无线网卡和以太网端口的笔记本电脑。我通过“交叉”以太网电缆将运行 Arch Linux 的 RapberryPi 插入其中。这是您可能需要的一件特别的事情 - 并非所有以太网卡都可以进行机器对机器的直接连接。

另一个棘手的部分是 IP 寻址。最好能说明这一点。这是我的小设置脚本。同样,enp9s0 是笔记本电脑的以太网端口,wlp12s0 是笔记本电脑的无线设备。

#!/bin/bash
/usr/bin/ip link set dev enp9s0 up
/usr/bin/ip addr add 172.16.1.1/24 dev enp9s0
sleep 10

modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j MASQUERADE
iptables -A FORWARD -o enp9s0 -i wlp12s0 -s 172.16.1.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

dhcpd -cf /etc/dhcpd.enp9s0.conf enp9s0
Run Code Online (Sandbox Code Playgroud)

该脚本为以太网卡设置静态 IP 地址 172.16.1.1,然后通过加载内核模块设置 NAT。它打开 IP 路由(在笔记本电脑上),然后执行一些iptables半魔法使数据包从无线卡路由到以太网,反之亦然。

我已经dhcpd在以太网端口上运行以提供 IP 地址,因为这是 Raspberry Pi 想要的,但是您可以在工作站上设置静态地址,以及静态路由、DNS 服务器和 NTP 服务器。

该文件/etc/dhcpd.enp9s0.conf看起来像这样,以防万一您沿着这条路线走下去:

option domain-name "subnet";
option domain-name-servers 10.0.0.3;
option routers 172.16.1.1;
option ntp-servers 10.0.0.3;
default-lease-time 14440;
ddns-update-style none;
deny bootp;
shared-network intranet {
        subnet 172.16.1.0 netmask 255.255.255.0 {
                option subnet-mask 255.255.255.0;
                pool { range 172.16.1.50 172.16.1.200; }
        }
}
Run Code Online (Sandbox Code Playgroud)

IP 地址的选择非常关键。我使用 172.16.1.0/24 作为从笔记本电脑出来的以太网电缆。笔记本电脑上的无线网卡以 192.161.1.0/24 结尾。您需要查看笔记本电脑的无线 IP 地址,并为以太网卡选择其他子网。此外,您需要选择“bogon”或“不可路由”网络之一。在我的示例中,172.16.1.0/24 来自官方不可路由的 IP 地址范围,192.168.1.0/24 也是如此,10.0.0.3 地址dhcpd.enp9s0.conf也是为 DNS 服务器和 NTP 服务器提供的。您必须动脑筋来找出适合您的设置的内容。