最近、Beagle Bone BlackにUbuntu 13.04をインストールしました。この画像:
https://rcn-ee.net/deb/flasher/raring/BBB-eMMC-flasher-ubuntu-13.04-2013-10-08.img.xz
このマイクロコントローラーにより、ホストPC(バージョン12.04(正確)(64ビット)、Kernel Linux 3.2.0-56-generic)とBeagleBone間のインターネット接続をUSB経由で共有できるため、次のようにデバイスを構成しました。
ビーグルボーンブラック:
ifconfig usb0 192.168.7.2
route add default gw 192.168.7.1
ホストPC:
Sudo su
#eth0 is my internet facing interface, eth3 is the BeagleBone USB connection
ifconfig eth2 192.168.7.1
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth2 -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward
インターネット接続自体が動作した後、ping 8.8.8.8
を実行すると、結果が得られます。
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=47 time=4.63 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=47 time=4.68 ms
64 bytes from 8.8.8.8: icmp_req=3 ttl=47 time=4.57 ms
64 bytes from 8.8.8.8: icmp_req=4 ttl=47 time=4.58 ms
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 4.578/4.620/4.682/0.063 ms
DNSも設定するためにecho "nameserver 8.8.8.8" >> /etc/resolv.conf
と入力しましたが、残念ながらping google.com
と入力すると、数秒の計算の後、ping: unknown Host google.com
を取得します
だから-私は、この解決策は良くないことを知っていますが、このセッションではうまくいくかもしれませんし、そうではありません。さらに、BBBとPCの両方でresolvconfを使用します。正直に言うと、このプログラムを使用してネットワークを構成する方法がわかりません。BeagleBone Blackの/etc/network/interfaces
を次のように変更してみました。
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#auto eth0
iface eth0 inet dhcp
# Example to keep MAC address between reboots
#hwaddress ether DE:AD:BE:EF:CA:FE
# WiFi Example
#auto wlan0
#iface wlan0 inet dhcp
# wpa-ssid "essid"
# wpa-psk "password"
# Ethernet/RNDIS gadget (g_ether)
# ... or on Host side, usbnet and random hwaddr
# Note on some boards, usb0 is automaticly setup with an init script
# in that case, to completely disable remove file [run_boot-scripts] from the boot partition
auto usb0
iface usb0 inet static
address 192.168.7.2
netmask 255.255.252.0
network 192.168.7.0
#broadcast 192.168.7.3
gateway 192.168.7.1
dns-nameservers 8.8.8.8 8.8.4.4
しかし、それは助けにはなりませんでした。
私は他に何をすべきかわかりません。助けてください。
その他の役立つ情報:
ビーグルボーンブラック:ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
usb0 Link encap:Ethernet HWaddr ce:39:f3:4a:c7:94
inet addr:192.168.7.2 Bcast:192.168.7.3 Mask:255.255.255.252
inet6 addr: fe80::cc39:f3ff:fe4a:c794/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:608 errors:0 dropped:0 overruns:0 frame:0
TX packets:375 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:57484 (57.4 KB) TX bytes:63078 (63.0 KB)
ルート
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.7.1 0.0.0.0 UG 0 0 0 usb0
192.168.7.0 * 255.255.255.252 U 0 0 0 usb0
うなめ-a
Linux arm 3.8.13-bone28 #1 SMP Fri Sep 13 03:12:24 UTC 2013 armv7l armv7l armv7l GNU/Linux
/etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
#domain localdomain
#search localdomain
#nameserver 192.168.1.1
PC:
ifconfig
eth0 Link encap:Ethernet Hardware Adresse 00:17:31:8d:6a:a6
inet Adresse:141.3.81.154 Bcast:141.3.83.255 Maske:255.255.252.0
inet6-Adresse: fe80::217:31ff:fe8d:6aa6/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:30732 errors:0 dropped:0 overruns:0 frame:0
TX packets:5888 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX-Bytes:7266589 (7.2 MB) TX-Bytes:1286462 (1.2 MB)
Interrupt:19
eth1 Link encap:Ethernet Hardware Adresse 00:04:75:ca:98:ee
UP BROADCAST MULTICAST MTU:1500 Metrik:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX-Bytes:0 (0.0 B) TX-Bytes:0 (0.0 B)
Interrupt:21 Basisadresse:0xe400
eth2 Link encap:Ethernet Hardware Adresse c8:a0:30:ac:2c:95
inet Adresse:192.168.7.1 Bcast:192.168.7.3 Maske:255.255.255.252
inet6-Adresse: fe80::caa0:30ff:feac:2c95/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:418 errors:0 dropped:0 overruns:0 frame:0
TX packets:637 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX-Bytes:45704 (45.7 KB) TX-Bytes:88161 (88.1 KB)
lo Link encap:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6-Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:16436 Metrik:1
RX packets:840 errors:0 dropped:0 overruns:0 frame:0
TX packets:840 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX-Bytes:142988 (142.9 KB) TX-Bytes:142988 (142.9 KB)
ルート
Ziel Router Genmask Flags Metric Ref Use Iface
default i60-gw-int.ipr. 0.0.0.0 UG 0 0 0 eth0
141.3.80.0 * 255.255.252.0 U 1 0 0 eth0
link-local * 255.255.0.0 U 1000 0 0 eth2
192.168.7.0 * 255.255.255.252 U 1 0 0 eth2
うなめ-a
Linux i60p354 3.2.0-56-generic #86-Ubuntu SMP Wed Oct 23 09:20:45 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
重要なこと-BBBとインターネットを共有するPCは、通常のホームネットワークよりもはるかに複雑な大学のネットワークで動作します-DNS解決で問題が発生する可能性がありますまだ重要なこと-resolv.conf.d/head(単に8.8.8.8のように実行されている)で意味のあるネームサーバーを設定し、ping google.comと入力すると、maschineはしばらくの間計算し、不明なホストエラーを返します。ナンセンスなアドレスを設定すると、確実に動作しません(つまり、123.123.123.123)エラーがすぐに返されます。
ホスト(Fedora 20)のインターフェースを信頼済みゾーンに追加することで、これが機能するようになりました。私はこれが本当に何をするのか分からないと言って恥ずかしいです。生のIPテーブルの出力を見たところ、このインターフェースに関する言及は見られず、ゾーンごとのチェーンのみが表示されました。とにかく、ホストをチェックアウトして、IP転送を妨げている可能性のあるものを確認してください。 ICMPトラフィックのデフォルトがより緩和されているため、pingが機能すると推測しています。また、上記のタイプミスがあると思いますが、usb0のネットマスクは255.255.255.252である必要があります。あなたがやったことを投稿してくれてありがとう、これがなければもっと痛いでしょう。
Connection Managerの上書き/etc/resolv.conf
の問題について、気紛れな解決策はファイルを保護することです(chmod 444
は尊重されないようです):
chattr +i /etc/resolv.conf
再起動して、「reboot」を使用して変更が保持されていることを確認します
後でファイルの保護を解除するには:
chattr -i /etc/resolv.conf
これは、connmanの後のブート時に/etc/init.d/connman
ゲームの更新(つまり、上書き)resolve.conf
のいずれかでした。
Debian wheezyをインストールした状態で、ビーグルボーンブラック(イーサネット経由)を使用してシステムを共有するには(ubuntuとFedoraを試しました)、この方法に従ってください。
PCでネットワークアイコンをクリックします> vpn接続> configure vpn> ethernetクリック+ Add
接続にbeagledhcpなどの名前を付けます
iPV4設定を自動dhcpに変更します
192.168.7.2への追加DNSサーバー(beagleboneのIP)
保存をクリック
ネットワークアイコンをクリックします> vpn接続> configure vpn> ethernet
[追加]をクリックします
接続にbeaglesharedなどの名前を付けます
iPV4設定を「他のコンピューターと共有」に変更する
保存をクリックします(beagleboneのLANケーブルとUSBケーブルをPCに接続すると、2つの接続が自動的に確立されます。これらの接続も編集できます)。
ボードをPCに接続します(LANとUSB)
ターミナルを開いて入力します
[dawn@localhost ~]$ ssh [email protected]
Debian GNU/Linux 7
BeagleBoard.org BeagleBone Debian Image 2014-04-23
Support/FAQ: http://elinux.org/Beagleboard:BeagleBoneBlack_Debian
Last login: Sat Aug 2 19:54:25 2014 from linux.local
root@beaglebone:~#
vi /etc/network/interfaces
これらの行をファイルに追加:beaglebone Ethernet(eth0)の静的IPを設定するには
auto eth0
iface eth0 inet static
address 10.42.0.69
netmask 255.255.255.0
gateway 10.42.0.1
dns-nameservers 8.8.8.8 8.8.8.9
ファイルを保存する
/etc/init.d/networking restart
変更を知るためにifconfigを実行します
ping 8.8.8.8
やった
疑問がある場合は私にメールしてください:[email protected]
サーバー/ゲートウェイのターミナルを入力します。
ここで、$ MACは、Linuxゲートウェイボックスのイーサネットコントローラーのハードウェアアドレスです。 ifconfigを実行し、イーサネットインターフェイスのetherプロパティを確認することで見つけることができます。 $ IPは、ビーグルに接続されている同じサーバー/ゲートウェイのusbポートのIPです。
:)
私にとって、パズルの重要な部分は、BBBが接続されているホストマシンでこれらのコマンドを実行することでもありました。
iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
iptables --table nat --append POSTROUTING --out-interface enp8s0 -j MASQUERADE
iptables --append FORWARD --in-interface enp8s0 -j ACCEPT
そしておそらくこれも:
echo 1 > /proc/sys/net/ipv4/ip_forward