Я недавно установил Ubuntu 13.04 на Beagle Bone Black. Это изображение:
https://rcn-ee.net/deb/flasher/raring/BBB-eMMC-flasher-ubuntu-13.04-2013-10-08.img.xz
Этот микроконтроллер позволяет обмениваться интернет-соединением между хост-ПК (версия 12.04 (точная) (64-битная), ядро Linux 3.2.0-56-generic) и BeagleBone через USB, поэтому я выбрал его и настроил устройство следующим образом:
BeagleBone Black:
ifconfig usb0 192.168.7.2
route add default gw 192.168.7.1
Хост ПК:
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 и ПК - используют resolvconf. Если честно, я понятия не имею, как настроить сеть с помощью этой программы ... Я попытался перейти /etc/network/interfaces
на Beagle Bone Black следующим образом:
# 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
но это не помогло
Я не знаю, что еще мне делать. Пожалуйста помоги.
Дополнительная полезная информация:
Beagle Bone Black: 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
uname -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
ПК:
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
uname -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, работает в сети университета, которая намного сложнее, чем обычная домашняя сеть, - может ли это вызвать проблемы с разрешением DNS? Что еще важно - если я установлю сервер имен, который имеет смысл, в resolv.conf.d / head (который просто запущен и работает как 8.8.8.8) и наберу ping google.com, то машина некоторое время вычисляет, а затем возвращает ошибку неизвестный хост , Если я установил бессмысленный адрес, который точно не работает (то есть 123.123.123.123), ошибка возвращается немедленно.
источник
Ответы:
Я получил это, добавив интерфейс на моем хосте (Fedora 20) в доверенную зону. Мне стыдно сказать, что я не знаю, что это на самом деле делает, хотя. Я посмотрел на исходные таблицы IP-адресов и не увидел упоминаний об этом интерфейсе, только некоторые цепочки по зонам. В любом случае, проверьте ваш хост и посмотрите, что может помешать пересылке IP. Я предполагаю, что пинг работает, потому что значения по умолчанию более смягчены для трафика ICMP. Кроме того, я думаю, что у вас есть одна опечатка выше, маска сети для usb0 должна быть 255.255.255.252. Спасибо за публикацию того, что вы сделали, без этого было бы гораздо более болезненно.
источник
В случае перезаписи диспетчера
/etc/resolv.conf
подключений хриплое решение заключается в защите файла (chmod 444
кажется, не соблюдается):перезагрузите компьютер, чтобы убедиться, что изменение выполнено с помощью 'reboot'
Чтобы снять защиту файла позже:
Это было либо сделать это, либо сыграть в
/etc/init.d/connman
игру обновления (т.е. перезаписать)resolve.conf
во время загрузки после connman.источник
Чтобы поделиться системой (я пробовал ubuntu & fedora) WiFi интернет с beaglebone black (через ethernet) с установленным Debian wheezy, следуйте этому методу.
На ПК нажмите значок сети> VPN-подключения> настроить VPN-сеть> нажмите + Добавить
назовите соединение beagledhcp или что-то, что вам нравится
изменить настройки IPV4 на автоматический DHCP
дополнительные DNS-серверы до 192.168.7.2 (IP beaglebone)
нажмите сохранить
нажмите на значок сети> VPN-подключения> настроить VPN-сеть> Ethernet
нажмите + Добавить
назовите beagleshared соединение или что-нибудь, что вам нравится
изменить настройки IPV4 на «общий доступ к другим компьютерам»
нажмите «Сохранить» (2 подключения могут быть установлены автоматически при подключении к ПК кабеля локальной сети и кабеля USB beaglebone. Также можно редактировать эти подключения)
подключите плату к ПК (LAN & USB)
Откройте терминал и введите
добавить эти строки в файл: установить статический IP для beaglebone Ethernet (eth0)
сохранить файл
сделать ifconfig, чтобы узнать изменения
пинг 8.8.8.8
сделано
если у вас есть какие-либо сомнения, напишите мне: dawnpaulfacebook@gmail.com
источник
Для меня важной частью головоломки также было выполнение этих команд на хост-компьютере, к которому подключен BBB:
И, возможно, также это:
источник
Введите в терминале сервера / шлюза:
arp -s "$ IP" "$ MAC" паб
Где $ MAC - это аппаратный адрес контроллера Ethernet шлюза linux. Вы можете найти его, запустив ifconfig и проверив свойство ether вашего интерфейса Ethernet. $ IP - это IP-адрес порта USB на том же сервере / шлюзе, который подключен к биглю.
:)
источник