6

Я прочитал много ответов для этого, но ни один из них не работал (вероятно, потому что они были написаны для устаревших версий OS X). Как мне на самом деле поделиться интернет-соединением моего Mac с beaglebone?

1 ответ1

10

Я предполагаю, что вы успешно установили необходимые драйверы, и beaglebone появится в вашем списке сетевых интерфейсов. После этого убедитесь, что вы правильно настроили IP-адрес и маску сети. Для соединения beaglebone по умолчанию это выглядит примерно так: настройка сети

Как только это будет сделано, убедитесь, что вы можете подключиться к beaglebone:

mac$ ssh root@192.168.7.2
Debian GNU/Linux 7

BeagleBoard.org Debian Image 2015-11-12

Support/FAQ: http://elinux.org/Beagleboard:BeagleBoneBlack_Debian

default username:password is [debian:temppwd]

Last login: Thu Nov 12 19:06:13 2015 from mac.local
root@beaglebone:~#

Теперь вы готовы настроить nat, чтобы позволить beaglebone совместно использовать ваше сетевое соединение. Для этого сначала найдите имя сетевого интерфейса, связанного с вашим beaglebone:

$ ifconfig | grep -C 3 192.168.7.1
en9: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1486
    ether 04:a3:16:ad:6c:4d
    inet6 fe80::6a3:16ff:fead:6c4d%en9 prefixlen 64 scopeid 0x4
    inet 192.168.7.1 netmask 0xfffffffc broadcast 192.168.7.3
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: active

Затем активируйте переадресацию ip и установите соответствующее правило брандмауэра:

mac$ sudo sysctl net.inet.ip.forwarding=1
net.inet.ip.forwarding: 0 -> 1
mac$ echo "nat on en0 from en9:network to any -> (en0)" | sudo pfctl -f - -e
pfctl: Use of -f option, could result in flushing of rules
present in the main ruleset added by the system at startup.
See /etc/pf.conf for further details.

No ALTQ support in kernel
ALTQ related functions disabled
pf enabled

Естественно, вам нужно заменить en9 на имя интерфейса, найденное на предыдущем шаге. Кроме того, если у вас уже включен брандмауэр, вы можете вручную добавить его в конфигурацию брандмауэра.

Наконец, нам нужно настроить шлюз по умолчанию:

mac$ ssh root@192.168.7.1
beaglebone# route add default gw 192.168.7.1 usb0
beaglebone# 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=54 time=16.6 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=54 time=20.5 ms

Если все работает, вы должны увидеть ответы на пинг. Если вы больше не можете подключиться к beaglebone, деактивируйте брандмауэр pfctl -d и убедитесь, что правило верно. Если вы можете подключиться к beaglebone, но проверка связи не удалась, проверьте таблицу маршрутизации (route на beaglebone, таблицу nat в mac pfctl -s nat и убедитесь, что вы запустили sysctl).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .