|
|
@ -0,0 +1,106 @@ |
|
|
|
# Internet sharing |
|
|
|
Internet sharing between a PC and the BeagleBone boards can be done on any OS. Thus, the next sections will indicate the different instructions for enabling internet sharing. |
|
|
|
|
|
|
|
|
|
|
|
# Windows PC |
|
|
|
|
|
|
|
The following guide is based on [^1]. In the `cmd` application, run the next command to determine the connection *IP* between your PC and the BBB: |
|
|
|
|
|
|
|
``` |
|
|
|
ping 192.168.7.2 |
|
|
|
|
|
|
|
Pinging 192.168.7.2 with 32 bytes of data: |
|
|
|
Reply from 192.168.7.2: bytes=32 time=1ms TTL=64 |
|
|
|
Reply from 192.168.7.2: bytes=32 time=2ms TTL=64 |
|
|
|
Reply from 192.168.7.2: bytes=32 time=1ms TTL=64 |
|
|
|
Reply from 192.168.7.2: bytes=32 time=2ms TTL=64 |
|
|
|
|
|
|
|
Ping statistics for 192.168.7.2: |
|
|
|
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), |
|
|
|
Approximate round trip times in milli-seconds: |
|
|
|
Minimum = 1ms, Maximum = 2ms, Average = 1ms |
|
|
|
|
|
|
|
``` |
|
|
|
|
|
|
|
if you get 0% loss, then the BBB has a network connection between PC and BBB: |
|
|
|
|
|
|
|
BBB <----> Windows PC |
|
|
|
192.168.7.2 192.168.7.1 |
|
|
|
|
|
|
|
Next, open the **network connection** application to identify the internet connection adapter and the BBB-USB connection: |
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
In my case, the `Ethernet` connection is the one with the Internet, while the `Ethernet 3` is the BeagleBone; notice that the BB indicates a **USB Host Device**. |
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
Then, the network with an internet connection must be shared with the BBB. Therefore, make right-click on the *Ethernet connection* with the internet and select options: |
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
then click on the `Sharing` tab and enable the `Internet Connection Sharing` as shown below. Now, you have to select one network connection to share the internet; remember that, in my case, it is `Ethernet 3` (USB-BBB Device). |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
After that, we should open the USB-Device network connection properties by right-clicking on its icon: |
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
then select the `Internet Protocol Version 4(TCP/IPv4)` and click on the properties button; at this point, you will probably lose the connection between the BBB and Windows. Also, the OS will make some undesirable changes in the assigned IP to the PC; it is wrong (it must be 192.168.7.1) |
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
next, we have to solve this error assignment by clicking on the `Obtain an IP address automatically` option or writing the correct IP by yourself |
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
Finally, we have to indicate to the BBB the IP used for any outside requests using the next commands in the **BBB's Shell**: |
|
|
|
|
|
|
|
``` |
|
|
|
sudo /sbin/route add default gw 192.168.7.1 |
|
|
|
``` |
|
|
|
|
|
|
|
and then check with `ping 8.8.8.8` command. |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
echo "nameserver 8.8.8.8" >> /etc/resolv.conf |
|
|
|
``` |
|
|
|
|
|
|
|
# GNU/Linux |
|
|
|
|
|
|
|
In the PocketBeagle, console type the following |
|
|
|
``` |
|
|
|
ifconfig usb0 192.168.7.2 |
|
|
|
route add default gw 192.168.7.1 |
|
|
|
``` |
|
|
|
|
|
|
|
In the linux console of host system type |
|
|
|
|
|
|
|
``` |
|
|
|
$ sudo su |
|
|
|
#wlan0 is my internet facing interface, eth5 is the PocketBeagle USB connection |
|
|
|
$ ifconfig eth5 192.168.7.1 |
|
|
|
$ iptables --table nat --append POSTROUTING --out-interface wlan0 -j MASQUERADE |
|
|
|
$ iptables --append FORWARD --in-interface eth5 -j ACCEPT |
|
|
|
$ echo 1 > /proc/sys/net/ipv4/ip_forward |
|
|
|
``` |
|
|
|
|
|
|
|
Incase network not accessible then type the following in BBB terminal |
|
|
|
|
|
|
|
``` |
|
|
|
echo "nameserver 8.8.8.8" >> /etc/resolv.conf |
|
|
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
# References |
|
|
|
[^1]: https://ofitselfso.com/BeagleNotes/HowToConnectBeagleboneBlackToTheInternetViaUSB.php |
|
|
|
|
|
|
|
[^2]: http://jpdelacroix.com/tutorials/sharing-internet-beaglebone-black.html |
|
|
|
|
|
|
|
[^3]: https://www.dangtrinh.com/2015/05/sharing-internet-with-beaglebone-black.html |
|
|
|
|
|
|
|
[^4]: https://www.elementzonline.com/blog/Sharing-Internet-using-Network-Over-USB-in-PocketBeagle |