配置 ubuntu 无线接入点,让智能手机连接 Apple TV

配置 ubuntu 无线接入点,让智能手机连接 Apple TV

由于我对网络只有基本的了解,所以我很难提出这个问题——对我温柔一点,我是一个乡下男孩。

我的家庭网络设置了常用的无线/以太网路由器,与 ISP 通信,处理 DHCP,并且我认为将 DNS 请求转发到 ISP 的 DNS 服务器。

我们的客厅在三楼,路由器在一楼——实际上顶楼几乎没有任何无线覆盖。不过,我有一条从路由器到顶楼的 CAT5e 以太网电缆,我的 Ubuntu 15.10 机器插入了这根电缆,网卡为 eth0。

Ubuntu 机器上还有一张无线网卡,因此我使用“create_ap”将 Linux 机器设置为无线接入点。Create_ap 在(大部分)默认设置下运行良好(我将频道改为 3 以避开邻居的信号)。我现在在顶楼有一个非常快的 wifi 信号。Create_ap 正在 NAT 模式下运行。

问题是新创建的接入点似乎将自己设置为(我认为)不同子网上的网关?抱歉,这里的术语不太清楚,但主以太网 DHCP 正在发布 192.168.1.x 范围内的 IP,而 create_ap 正在运行自己的 DHCP 服务器,发布 192.168.12.x 范围。

通常,这对于网络上的几乎所有用途来说都不是问题,我们可以连接我们的智能手机并上网、发送电子邮件等。

我的具体问题是我们有一个连接到以太网 192.168.1.x 网络的 Apple TV 盒。我们想将智能手机上的视频播放/屏幕镜像到 AppleTV 盒上,但无法实现,因为它们不在同一个“网络”上。

我认为这意味着要解决这个问题,我们需要为智能手机和 AppleTV 分配同一范围内的 IP(即 192.168.1.x)。

尝试修复:

  1. 我配置了 create_ap,以设置 IP 地址为 192.168.1.3 的接入点作为网关,并发出 192.168.1.5-254 范围内的 IP。不出所料,这没有奏效 - 想想看,我在同一个域上有两个 DHCP 服务器。我想我可以 ping 到 192.168.1.1,但网页浏览结果显示“没有 DNS 服务器”

  2. 然后我把主路由器改为只在 192.168.1.5-199 范围内发布 DHCP IP,把 create_ap 改为使用 192.168.1.1 作为网关,在 192.168.1.200-220 范围内发布。这也不起作用。

  3. 与 2 类似,只是我告诉 create_ap 使用 192.168.1.3 作为网关 IP。

我认为,如果我可以将主路由器用于 DHCP,并使接入点将所有 DHCP 请求转发到主路由器,那么问题可能就会得到解决。这就是桥接吗?create_ap 具有“桥接”模式,而不是 NAT。我有限的知识只停留在桥接是什么、它可以用于什么以及它可能如何有用。

或者有没有办法欺骗智能手机 IP,使它们看起来像是在 192.168.1.x 网络上?

非常感谢您的想法。

这是在配置中 ifconfig 的输出,该配置为智能手机提供互联网访问,但不会连接到 Apple TV。

enp3s0    Link encap:Ethernet  HWaddr c8:60:00:53:e2:73  
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::ca60:ff:fe53:e273/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5850994 errors:0 dropped:17 overruns:0 frame:0
          TX packets:3710716 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:7924568585 (7.9 GB)  TX bytes:1160978370 (1.1 GB)

wlp4s6    Link encap:Ethernet  HWaddr 80:1f:02:4f:17:0a  
          inet addr:192.168.12.1  Bcast:192.168.12.255  Mask:255.255.255.0
          inet6 addr: fe80::821f:2ff:fe4f:170a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:95836 errors:0 dropped:14 overruns:0 frame:0
          TX packets:133242 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:8354049 (8.3 MB)  TX bytes:179933721 (179.9 MB)

更新: 因此我尝试与以下设备建立桥接连接:

sudo create_ap -m bridge wlp4s6 enp3s0 AP-NAME MYPASSWORD

它创建一个 br0 接口并具有以下 ifconfig 输出。

br0       Link encap:Ethernet  HWaddr 80:1f:02:4f:17:0a  
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::ca60:ff:fe53:e273/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:71 errors:0 dropped:0 overruns:0 frame:0
          TX packets:171 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:18583 (18.5 KB)  TX bytes:57372 (57.3 KB)

这会导致无法从 Linux 机器上进行浏览(在 Chrome 上返回“无法访问此站点,找不到 www.google.co.uk 的服务器 DNS 地址。”)。但我可以 ping 通路由器 192.168.1.1,而且我的智能手机似乎可以正常浏览互联网???

这看起来像是使用 br0 接口时 ubuntu 机器上的 dns 问题。我可以 ping 路由器,并使用 192.168.1.1 浏览它。我还可以 ping google 的 dns 服务器 8.8.8.8,所以我认为我有流量,只是没有 DNS。

运行接入点时,如何让 DNS 为 ubuntu 机器工作?

相关内容