【问题标题】:Share the internet access from laptop to beaglebone black and then access it through VNC server从笔记本电脑共享互联网访问到beaglebone black,然后通过VNC服务器访问
【发布时间】:2013-10-20 18:51:24
【问题描述】:

我正在尝试通过笔记本电脑与 Beaglebone Black 共享互联网。这是我到目前为止所尝试的-

  1. 我通过 USB 电缆将 Beaglebone Black 连接到运行 Windows 8 的笔记本电脑。然后,我去了网络和共享中心。然后,我想共享的网络,我与 Beaglebone 共享(它说本地连接)。现在,我去了 Beaglebone 上的 Gate one SSH 并写道 - “ping www.google.com”。但它说“未知主机”。

  2. 现在,由于上述方法不起作用,我用标准以太网电缆连接了 Beaglebone Black,并再次尝试共享我的网络,但仍然不起作用。

这就是我想要做的- 如果我能够连接到互联网,我想设置 VNC 服务器并通过它在我的笔记本电脑上加载 linux 的 GUI。

任何帮助将不胜感激。如果还有其他方法可以做到这一点,请告诉我。网上的教程我都试过了,都没有成功。

【问题讨论】:

    标签: networking arm vnc beagleboard beagleboneblack


    【解决方案1】:

    这里是详细的答案,经过漫长的等待,我终于想出了如何在 BBB 上共享互联网。这个问题每天至少被看到 10 次,所以我应该自己回答。 (也为此给了我热门问题徽章!)

    我尝试的第一件事是:

    我将 BBB(运行埃)连接到笔记本电脑(运行 Windows 8)。笔记本电脑识别了该设备,我能够通过 putty 对其进行 SSH 连接。

    现在,我尝试 ping 我的计算机,其 IP 地址为 192.168.7.1 .. 这一步对我没有用,我的 BBB 永远无法 ping 我的计算机,但是,我能够通过 ping beaglebone 本身提供的 IP 是192.168.7.2(这很明显)

    我在互联网上到处搜索并尽一切努力克服这个故障,例如:

    我在 BBB 中将默认网关设置为192.168.7.1

    /sbin/route add default gw 192.168.7.1
    

    但这也没有用。

    我之前认为我需要ping 192.168.7.1 才能在 BBB 上上网。

    由于没有任何效果,我决定跳过这一步。

    我只是简单地连接了 BBB,然后在 windows 8 中转到 网络和共享中心,然后我从那里共享了从我的 wifi 连接到 beaglebone 的互联网连接.

    当你这样做时,你会看到 BB 将失去它与 putty 的连接(如果你在网络共享之前启动了 putty),这是因为计算机为 BB 分配了一个 IP,你必须将其更改为 'Obtain the自动IP”

    为此,请右键单击并转到 BB 连接的属性,然后从列表中选择 IPV4 tcp/IP 并转到其属性。在那里,您将看到“自动获取 IP”选项

    现在再次启动 putty(因为之前的连接将被终止),您将看到 BB 能够连接。

    现在只需添加我上面显示的默认网关,然后您就可以 ping 8.8.8.8 或任何其他 IP 地址。现在,只需像这样添加名称服务器:

    cd /etc
    more resolv.conf
    nano resolv.conf 
    

    并在nameserver 127.0.0.1下方添加这一行

    nameserver 8.8.8.8
    

    然后保存,你就可以ping google.com了。

    现在是 VNC 服务器部分。对于那种情况,我也错了。要连接到 VNC 服务器,您不需要在 BBB 上连接互联网。是的,您将需要它来在其上安装 VNC 服务器,但之后不需要。安装完成后,你必须在 BB 中简单地执行此操作:

    x11vnc -bg -o %HOME/.x11vnc.log.%VNCDISPLAY -auth /var/run/gdm/auth-for-gdm*/database -display :0  -forever
    

    然后按回车键,BB 将回复 VNC,开始于port 5900

    就是这样,现在回到Windows并启动VNC服务器,添加地址192.168.7.2,您可以在屏幕上看到GUI。我还可以在 beaglebone 上上网。

    感谢您的支持,如果我的问题在这里有错误,请通知我。 另外,如果您有任何疑问,refer to this awesome video my derek molloy:他已经解释得很好,如果它不起作用,请记住跳过 ping 回 192.168.7.1 的步骤。

    我还没有弄清楚。得到答案后,我会编辑答案。

    【讨论】:

    • 两点:1) 作为提醒其他想要这样做的人,我不得不对网络连接进行一些相当大的调整,以使 Windows 与 BeagleBone 共享我的 Internet 连接,包括重新启动和关闭/打开我的其他本地连接。但最终,摆弄得到了回报。 (2)link provided above 的说明可能会使这个过程更清晰(我觉得很有帮助)。
    • 你好。这对我真的很有帮助,但我有一些问题:1)如何在Linux而不是Windows下共享连接? 2) 开启VNC,进入你提供的线路后,BB不会回复5900端口,也无法连接VNC,提示连接被主机拒绝。你能帮帮我吗?
    • @Nur,你应该打开一个新问题。
    【解决方案2】:

    1) 在您的 Beaglebone 上:

    须藤苏

    ifconfig usb0 192.168.7.2

    路由添加默认gw 192.168.7.1

    2) 现在共享网络,确保你的电脑的 ip 是 192.168.7.1 之后

    【讨论】:

    • 在 Win8.1 上运行良好!
    • 第一个和第二个答案太棒了!
    • 如何让它在重启后持久化?
    • @Nur 为此创建一个包含这些命令的 bash 脚本。然后通过 crontab 安排脚本在重启时运行:crontab -e 将此行添加到 cron:@reboot /path/to/your/script
    • @Muneeb 我在 linux 方面不够专业,无法理解这一点(目前只有 GUI 用户),是否有任何指向分步教程的链接?
    【解决方案3】:

    通过以太网将 beaglebone black 连接到路由器 现在使用 亚行 tcpip 5555
    adb connect bbb_ip:5555 然后使用 adb shell

    【讨论】:

      【解决方案4】:

      您面临的问题是解析域名服务器。如果您能够通过 SSH 访问设备(例如使用 PuTTy),那么您也可以为其提供互联网 - 但设备需要知道在哪里寻找。

      BeagleBone Black 有一个名为 Connman 的实用程序来管理其连接。

      /usr/lib/connman/test 有与之相关的功能。

      在其中使用./set-ipv4-method 设置不同的值。 确保正确设置名称服务器。 如果有疑问,请使用 8.8.8.8 作为唯一条目。另请注意,BeagleBone 的网关必须是您的计算机。

      如果您不是新手并且需要更详细的说明,请参阅this.

      【讨论】:

      • ConnMan 实用程序是否仅在 BeagleBone Black 的 Angstrom 发行版中可用?我的 BeagleBone Black 上没有它,它运行的是 Debian GNU/Linux 7。
      • 是的,康曼在埃。其他发行版有自己的网络管理器。我认为 Debian 有 network/interfaces
      • 非常感谢!几周以来我一直被 ConnMan 实用程序所困扰,尤其是自从 beaglebone.org 声称所有 BeagleBone Black 都运行 Debian 发行版之后,我只是假设所有在线教程都适用于 Debian 发行版......
      • 我不是 Angstrom 的忠实粉丝。我发现 Ubuntu for BeagleBone 是一个更好的选择(至少对我而言)。
      【解决方案5】:

      要继续 Vikas Arora 提供的答案,您必须做 3 件事,主要是通过 USB 连接以太网到您的 Beaglebone。首先,将您的 PC 互联网连接与使用 Beaglebone 制作的本地网络共享,这个过程在上面已经得到了很好的解释。并且还设置了自动获取的IP地址。

      其次,将域名服务器设置为公共 DNS 服务器地址 8.8.8.8 也如上所述。但是这个设置不是持久的,即一旦你重新启动,设置就会丢失。这是因为 Angstrom 'connman' 上的网络管理器会在启动时重置 etc/resolv.conf。为了纠正这个问题,我通过转到 /lib/systemd/system 并禁用了我的设备上的 connman 服务 发射命令

      systemctl stop connman.service
      
      systemctl disable connman.service
      

      这将使您的名称服务器文件持久化,如果需要,您可以随时重新启动 connman 服务。

      第三,您必须将您的网关设置为您的互联网共享机器的地址,也如上所述。但是这个设置也不是持久的。为此,请在您的主目录中创建如下脚本

      echo "********Setting up the default gateway"
      
      route add default gw 192.168.7.1
      

      并创建一个将在启动时启动并触发您的脚本的服务。一个过程很好地解释了 https://askubuntu.com/questions/506167/how-do-you-save-the-routing-table-on-the-beaglebone-blackangstrom

      http://mattrichardson.com/BeagleBone-System-Services/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-26
        • 1970-01-01
        • 2017-03-04
        • 2016-07-04
        • 1970-01-01
        • 2016-02-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多