好吧,要么我看起来比较笨,要么这里确实有问题。
Fedora 23
接口 1:enp9s0 192.168.1.137 255.255.255.0 有线(互联网连接)
接口 2:wlp0s20u14 192.168.10.1 255.255.255.128 无线(无互联网连接)
这是我正在尝试做的事情:
在接口 2 上创建无线热点,然后让任何连接的人都可以通过连接到互联网的接口 1 访问互联网。
到目前为止我尝试过的事情清单长得可笑。尝试从firewalld切换到iptables,遵循网上的大量指南但无济于事。
谁能帮我共享从接口 1 到接口 2 的连接以及连接到接口 2 的所有设备吗?
创建一个热点接缝工作,我让 dhcpd 服务器在接口 2 上运行,设备获得 IP 地址,但它们无法访问互联网。
有人可以帮我吗?我在这里没有选择了。如果可能的话,我想坚持使用firewalld,因为一些虚拟机正在运行,但如果没有,我会很乐意接受我能得到的东西,iptables 会做得很好。
答案1
这是一个应该对你们中的一些人有用的解决方案。只需 6 条线路即可与您创建的 WiFi 网络共享互联网。
简单地桥接两个接口,安装并使用该包bridge-utils
apt-get install bridge-utils
那么你可以使用brctl
brctl addbr foo
brctl addif enp9s0
brctl addif wlp0s20u14
在哪里
foo :为这个新桥接接口指定的名称
anp9s0 :您可以访问互联网的接口
wlp0s20u14 :运行 WiFi 热点的界面
然后以这种方式启动你的界面
ifconfig enp9s0 0.0.0.0 up
ifconfig wlp0s20u14 0.0.0.0 up
ifconfig foo up
缺点是您将无法访问互联网。我在虚拟机上使用该方法
创建您自己的 WiFi 热点, 您可以使用airbase-ng
。
airbase-ng --esssid MyWiFi wlan0
在哪里
--essid :设置参数以定义您自己的 essid。 (默认为“default”) wlan0 :要使用的无线接口
然后,这将在新接口 (at0) 上创建 WiFi 热点。然后你可以像我说的那样桥接该接口。
答案2
当你的机器作为热点工作并且 dhcpd 工作时,你只需要作为路由器工作 - 我的建议是尝试找到一个指南来设置你用作路由器的 Fedora 版本。
它基本上可以归结为:
- 启用IP转发
- 设置路由
- 设置伪装
- 允许您使用的任何防火墙中的流量。
我从来没有使用过Fedora或firewalld,所以我不知道在你的设置中执行此操作的好方法是什么,但是启用IP转发只是echo 1 > /proc/sys/net/ipv4/ip_forward
,如果互联网访问在fedora盒子上工作,路由可能是正确的,伪装是一些东西就像iptables -t nat -A POSTROUTING -s wlp0s20u14 -j MASQUERADE
,对于防火墙,你想要确保你想要/不想要的流量类型在FORWARD
netfilter 链中被允许/阻止(内核中完成工作的框架,iptables
只是一个前端,我无法想象firewalld 是其他任何东西)。