如何将 Linux 计算机设置为“接入点”,但不“桥接”/转发往返于有线网络的流量(使用 WPA2 并禁用 SSID 广播)?
这样做的原因是为了即使计算机未连接到任何其他网络,也可以通过无线方式访问计算机本身上的内容。
似乎应该有一种方法可以使用hostapd
某种 dhcp 来提供 IP 地址。
该计算机当前运行的是 Debian squeeze,并且有一个使用 b43 驱动程序的网络卡。这该教程大部分时候有效,但在尝试获取 IP 地址时无法停止,此外,它适用于传统的路由器设置。
似乎还有其他方法可以做到这一点(见这里, 和这里有关在 中使用 WPA 的信息/etc/network/interfaces
)。
更新:感谢上帝,现在可以正常工作了。通过运行禁用 IP 转发echo 0 > /proc/sys/net/ipv4/ip_forward
。无法获取 IP 地址的原因是 1) 接口没有设置 IP 地址,2) 没有运行 DHCP 服务器。
因此我使用 ifconfig 设置 IP。示例:ifconfig wlan0 <ipaddress> netmask <subnet-mask>
。我安装了 dnsmasq 作为 DHCP 服务器。此外,Android 手机大约每 5 秒就会断开连接;beacon_int=15
在 hostapd.conf 中进行设置可解决此问题。
答案1
能够路由的系统的默认配置应该是禁用路由。
您可以添加以下几行以/etc/sysctl.conf
使其更加明显:
net.ipv4.conf.all.forwarding = 0
net.ipv4.conf.all.mc_forwarding = 0
net.ipv4.conf.default.forwarding = 0
net.ipv4.conf.default.mc_forwarding = 0
net.ipv6.conf.all.forwarding = 0
net.ipv6.conf.default.forwarding = 0
您可能仍想运行某种 DHCP 服务器,该服务器不会在特定接口上配置默认路由。(默认dhcpd.conf
路由作为示例,您需要禁用它)