BeagleBone Black üzerinde USB üzerinden İnternet


11

Son zamanlarda Beagle Bone Black'e Ubuntu 13.04'ü yükledim. Bu görüntü:

https://rcn-ee.net/deb/flasher/raring/BBB-eMMC-flasher-ubuntu-13.04-2013-10-08.img.xz

Bu mikrodenetleyici, ana bilgisayar (Sürüm 12.04 (hassas) (64-Bit), Çekirdek Linux 3.2.0-56-jenerik) ve USB üzerinden BeagleBone arasında internet bağlantısını paylaşmaya izin verir, bu yüzden bunun için gittim ve cihazı aşağıdaki gibi yapılandırdım:

BeagleBone Siyahı:

ifconfig usb0 192.168.7.2
route add default gw 192.168.7.1

Ana 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

Bundan sonra Internet Bağlantısı kendi kendine çalışır, ne zaman ping 8.8.8.8ı almak sonuçları:

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'yi yapılandırmak için de yazdım echo "nameserver 8.8.8.8" >> /etc/resolv.confama maalesef ping google.combirkaç saniye sonra,ping: unknown host google.com

Yani - biliyorum, bu çözüm iyi değil, ama bu oturum için işe yarayabilir ve işe yaramaz. Dahası, hem BBB hem de PC - resolvconf kullanın. Dürüst olmak gerekirse, bu programı kullanarak ağı nasıl yapılandıracağına dair hiçbir fikrim yok ... /etc/network/interfacesBeagle Bone Black'i şu şekilde değiştirmeyi denedim :

# 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

ama yardımcı olmadı.

Başka ne yapmalıyım bilmiyorum. Lütfen yardım et.

Ek faydalı bilgiler:

Beagle Kemik Siyahı: 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)

rota

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

isimsiz -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)

rota

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

isimsiz -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

Ne önemli olabilir - İnternet'i BBB ile paylaşan bilgisayar, normal ev ağından çok daha karmaşık olan Üniversite ağında çalışır - DNS çözümlemesinde sorunlara neden olabilir mi? Henüz önemli olan - resolv.conf.d / head (ki basitçe 8.8.8.8 gibi çalışır ve çalışır) adında bir ad sunucusu ayarlarsam ve ping google.com yazın, maschine bir süre hesaplar ve hata bilinmeyen ana bilgisayarı döndürür . Saçma bir adres ayarlarsam, kesinlikle işe yaramaz (yani 123.123.123.123) hatası hemen iade edilir.


(Geri değil) BB ile komutlarınız hatasız çalışır. İsim sunucusu 127.0.0.1'i <dns> sunucumun isim sunucusu ile değiştirdim ve ana bilgisayar adı çözümlemesi çalıştı ...
Rémi

Yanıtlar:


5

Bu çalışmayı ana bölgemdeki (Fedora 20) güvenilir bölgeye ekleyerek aldım. Bunun gerçekte ne yaptığını bilmediğimi söylemekten utanıyorum. Ben ham IP tabloları çıktı baktı ve bu arabirimin herhangi bir söz görmedim, sadece bölgelere göre bazı zincirler. Her neyse, ana makinenizi kontrol edin ve IP yönlendirmeyi neyin önleyebileceğini görün. Ping çalışır, çünkü varsayılanlar ICMP trafiği için daha rahat olduğundan tahmin ediyorum. Ayrıca, yukarıda bir yazım hatası olduğunu düşünüyorum, usb0 için netmask 255.255.255.252 olmalıdır. Yaptıklarınızı paylaştığınız için teşekkür ederiz, bu onsuz çok daha acı verici olurdu.


Bu kesinlikle yardımcı olur.
Ahtapot

1

Bağlantı Yöneticisi'nin üzerine yazma sorunu /etc/resolv.confiçin, dosyayı korumak ( chmod 444onurlandırılmamış gibi görünüyor) için çirkin bir çözüm :

chattr +i /etc/resolv.conf

'reboot' kullanarak değişikliğin beklediğini doğrulamak için yeniden başlat

Dosyanın korumasını daha sonra kaldırmak için:

chattr -i /etc/resolv.conf

Connman'dan sonra önyükleme sırasında bunu yapın veya /etc/init.d/connmanyenileme oyunu (yani üzerine yazma) resolve.confoynayın.


1

Debian wheezy yüklü ile beaglebone siyah (ethernet aracılığıyla) ile sistem (ubuntu & fedora denedim) WiFi internet paylaşmak için bu yöntemi izleyin.

PC'de ağ simgesine tıklayın> vpn bağlantıları> vpn'yi yapılandır> ethernet tıklayın + Ekle

Bağlantıyı beagledhcp veya beğendiğiniz herhangi bir ad verin

IPV4 ayarlarını otomatik dhcp olarak değiştir

192.168.7.2'ye ek DNS sunucuları (beaglebone IP'si)

kaydet'i tıkla

ağ simgesine tıklayın> vpn bağlantıları> vpn'yi yapılandır> ethernet

+ Ekle'yi tıklayın

bağlantı beagleshared veya sevdiğiniz herhangi bir isim

IPV4 ayarlarını "diğer bilgisayarlarla paylaşıldı" olarak değiştir

click save (PC'ye LAN kablosu ve beaglebone USB kablosu bağlandığında 2 bağlantı otomatik olarak kurulabilir. bu bağlantıları da düzenleyebilirsiniz)

anakartı PC'ye bağlayın (LAN ve USB)

Terminali açın ve yazın

[dawn@localhost ~]$ ssh root@192.168.7.2
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

bu satırları dosyaya ekle: beaglebone Ethernet (eth0) için statik IP ayarlamak için

    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

Dosya 'yı kaydet

/etc/init.d/networking restart

değişiklikleri bilmek için ifconfig yap

ping 8.8.8.8

tamam

u hav herhangi bir şüphe varsa bana mail: dawnpaulfacebook@gmail.com


"192.168.7.2'ye ek DNS sunucuları (beaglebone IP'si)" kısmının hiçbir şeyle ilgisi yoktur.
Ahtapot

0

Benim için bulmacanın önemli bir parçası da BBB'nin bağlı olduğu ana makinede bu komutları çalıştırmaktı:

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

Ve belki de bu:

echo 1 > /proc/sys/net/ipv4/ip_forward

0

Sunucunun / ağ geçidinin bir terminalini yazın:

arp -s "$ IP" "$ MAC" pub'ı

Burada $ MAC, linux ağ geçidi kutusunun Ethernet denetleyicisinin donanım adresidir. İfconfig komutunu çalıştırarak ve Ethernet arayüzünüzün eter özelliğini kontrol ederek bulabilirsiniz. $ IP, beagle'a bağlı olan aynı sunucu / ağ geçidindeki usb portunun ipidir.

:)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.