Ethernet over USB

From Qi-Hardware
Revision as of 09:48, 2 May 2010 by Mirko (Talk | contribs)
Jump to: navigation, search

The recently uboot/kernel images have Ethernet-over-USB support enabled by default, which you can use to give the NanoNote a connection to the internet.

Contents

Setup on the host

To let your NanoNote use your laptops/PCs (host) internet connection, you have to enable NAT and routing on your host and set a default route on your NanoNote via your host.

The NanoNote's IP address is set to 192.168.254.101 by default.

Network config

On your linux/unix host run:

$ ifconfig usb0 192.168.254.100

to give your host an IP address which is in the same subnet as your NanoNote.

To review that, you can use ifconfig as well

$ ifconfig usb0

and should get the following

usb0      Link encap:Ethernet  HWaddr 16:90:89:ea:82:6f  
          inet addr:192.168.254.100  Bcast:192.168.3.255  Mask:255.255.255.0
          inet6 addr: fe80::1490:89ff:feea:826f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  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:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

To verify the proper connection, you can try to ping your NanoNote from your host and vice versa (note: NanoNote has the 101 in the end).

$ ping 192.168.254.101 # pinging your NanoNote from your host


Now we have successfully established a network connection between host and NanoNote.

To let your NanoNote use your hosts internet connection, we have to enable routing and NATting on the hosts side:

NAT config

$ modprobe iptable_nat
$ echo "1" > /proc/sys/net/ipv4/ip_forward
$ iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # eth0 in this example is the interface on your host connected to the internet, adjust if needed


Setup on the NanoNote

Network config

Login into your NanoNote, either with:

$ telnet 192.168.254.101

or - if you already set a root password on your NanoNote - with:

$  ssh root@192.168.254.101
$ route add default gw 192.168.254.100 # set a route on your NanoNote through your host
$ echo "nameserver 8.8.8.8" >> /etc/resolv.conf

In this example we use googles nameserver (8.8.8.8) but you can use any you'd like.

We're done now! :)

You may want to verify your setup by connecting an outer server by your NanoNote with pinging e.g. google.com:

$ ping google.com

You should see sth. like:

PING google.com (209.85.129.105) 56(84) bytes of data.
64 bytes from fk-in-f105.1e100.net (209.85.129.105): icmp_seq=1 ttl=57 time=44.2 ms
64 bytes from fk-in-f105.1e100.net (209.85.129.105): icmp_seq=2 ttl=57 time=44.1 ms

and "voilà"! your Ben is now conected to the evil internet :)

Personal tools
Namespaces
Variants
Actions
Navigation
interactive
Toolbox
Print/export