usb로 네트워크 공유

2019. 5. 12. 23:12임베디드/임베디드리눅스

BBB에서 리눅스 PC를 경유하여 인터넷에 연결하는 것을 네트워크 공유라고 한다. BBB와 리눅스 PC를 하나의 네트워크로 설정해서 이용한다는 의미다. 이를 위해서는 리눅스에서 커널 방화벽과 IP forwarding 기능을 활성화해야 하고, BBB에서는 Gateway를 설정해야 한다.

 

1
2
3
4
5
6
7
8
9
$ sudo iptables --append FORWARD --in-interface "BBB의 이더넷카드" -j ACCEPT
$ sudo iptables --table nat --append POSTROUTING --out-interface "리눅스의 이더넷카드" -j MASQUERADE
 
$ sudo sh -"echo 1 > /proc/sys/net/ipv4/ip_forward"
 
$ sudo ssh@root 192.168.7.2
# /sbin/route add default gw 192.168.7.1
 
# ping www.google.com
cs

 

ip_forward 파일은 초기에 0 값이다

그리고 gw 명령어에서 192.168.7.1은 BBB에서 바라본 리눅스를 말하는 것으로 BBB의 데이터를 모두 리눅스로 보내고 리눅스에서 인터넷 어댑터를 통해서 외부로 나간다는 뜻이다