(→Setting up default route and DNS settings) |
(categorize) |
||
| (7 intermediate revisions not shown) | |||
| Line 1: | Line 1: | ||
= Using USB networking = | = Using USB networking = | ||
| - | (This is based largely on the | + | (This is based largely on the [http://wiki.maemo.org/N900_USB_networking N900 USB Networking] page of wiki.maemo.org) |
This page describes how to enable Networking on the N900 via USB. The first part describes how to configure the Nokia N900 as a USB pluggable network device. The second part describes how to configure various platforms to use the Nokia N900 as a network device. | This page describes how to enable Networking on the N900 via USB. The first part describes how to configure the Nokia N900 as a USB pluggable network device. The second part describes how to configure various platforms to use the Nokia N900 as a network device. | ||
| Line 22: | Line 22: | ||
the outside world try to add a nameserver to /etc/resolv.conf: | the outside world try to add a nameserver to /etc/resolv.conf: | ||
| - | |||
# added Google DNS | # added Google DNS | ||
nameserver 8.8.8.8 | nameserver 8.8.8.8 | ||
| Line 30: | Line 29: | ||
== Host USB Network Configuration == | == Host USB Network Configuration == | ||
| - | The Host configuration is detailed in the Maemo 4.x [http://wiki.maemo.org/USB_networking#Host_USB_Network_Configuration USB Networking wiki]. Please refer to it for details. | + | The Host configuration is detailed in the Maemo 4.x [http://wiki.maemo.org/USB_networking#Host_USB_Network_Configuration USB Networking wiki]. Please refer to it for details. <b>Notice! Ethernet module has changed from cdc_ether to cdc_eem.</b> |
== Host configuration on Debian Lenny == | == Host configuration on Debian Lenny == | ||
| + | <b>Notice! Ethernet module has changed from cdc_ether to cdc_eem.</b> | ||
Create the file in /etc/udev/rules.d/99-nokia-n900.rules and put in the following lines: | Create the file in /etc/udev/rules.d/99-nokia-n900.rules and put in the following lines: | ||
| Line 70: | Line 70: | ||
ifconfig n900 | ifconfig n900 | ||
| - | == Automatic configuration with Ubuntu 9.10 == | + | == Automatic configuration with Ubuntu 9.10 and 10.04 == |
| - | Note: | + | Note: these instructions should be fixed/improved: |
| + | |||
| + | * Create the file in /etc/udev/rules.d/99-nokia-n900.rules and put in the following lines: | ||
| + | <b>Notice! Ethernet module has changed from cdc_ether to cdc_eem.</b> | ||
| - | |||
SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_ether", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900" | SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_ether", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900" | ||
SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_phonet", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900pn" | SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_phonet", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900pn" | ||
| - | + | * Edit /etc/network/interfaces and add: | |
<pre> | <pre> | ||
auto n900 | auto n900 | ||
| Line 89: | Line 91: | ||
</pre> | </pre> | ||
| - | + | * Fix /etc/init/network-interface.conf (this is not required for Ubuntu 10.04), change the line: | |
stop on net-device-removed INTERFACE=$INTERFACE | stop on net-device-removed INTERFACE=$INTERFACE | ||
with: | with: | ||
| Line 95: | Line 97: | ||
(Note the difference: net-device-remove'''d''') | (Note the difference: net-device-remove'''d''') | ||
| - | + | * Reload udev rules with: | |
| - | + | ||
udevadm control --reload-rules | udevadm control --reload-rules | ||
| - | Now put your usb cable in the pc and in the n900. | + | * Restart NetworkManager so it re-reads the interfaces file (otherwise it'll clobber your network device): |
| + | |||
| + | <pre>sudo /etc/init.d/network-manager restart</pre> | ||
| + | |||
| + | or | ||
| + | |||
| + | <pre>sudo service network-manager restart</pre> | ||
| + | |||
| + | * Now put your usb cable in the pc and in the n900. | ||
If you are unable to autoconnect through the networking applet, you may need to manually bring up the interface: | If you are unable to autoconnect through the networking applet, you may need to manually bring up the interface: | ||
| Line 105: | Line 114: | ||
If all went fine: | If all went fine: | ||
| - | * | + | * You should see with ifconfig -a two new network interfaces, n900 and n900pn, the first one configured with the proper ip address 192.168.2.15, and should be able to ping the n900. |
| + | |||
| + | * The N900 should be able to use the pc internet connection immediately. | ||
| + | |||
| + | |||
| + | == Automatic configuration with Fedora 13 == | ||
| + | |||
| + | * Create the file /etc/init/n900-up.conf and put in the following lines: | ||
| + | |||
| + | start on n900-up | ||
| + | script | ||
| + | iptables -A POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE | ||
| + | echo 1 > /proc/sys/net/ipv4/ip_forward | ||
| + | end script | ||
| + | |||
| + | * Create the file /etc/init/n900-down.conf and put in the following lines: | ||
| + | |||
| + | start on n900-down | ||
| + | script | ||
| + | iptables -D POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE | ||
| + | echo 0 > /proc/sys/net/ipv4/ip_forward | ||
| + | end script | ||
| + | |||
| + | * Create the file /etc/udev/rules.d/99-nokia-n900.rules and put in the following lines: | ||
| + | |||
| + | SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_eem", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900" | ||
| + | SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_eem", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", PROGRAM="/sbin/initctl emit n900-up" | ||
| + | SUBSYSTEM=="net", ACTION=="remove", ENV{ID_USB_DRIVER}=="cdc_eem", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", PROGRAM="/sbin/initctl emit n900-down" | ||
| + | SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_phonet", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900pn" | ||
| + | |||
| + | * Create the file /etc/sysconfig/network-sripts/ifcfg-n900 and put in the folliwing lines: | ||
| + | |||
| + | NAME="n900" | ||
| + | TYPE=Ethernet | ||
| + | HOTPLUG=yes | ||
| + | BOOTPROTO=none | ||
| + | IPADDR=192.168.2.14 | ||
| + | PREFIX=24 | ||
| + | ONBOOT=yes | ||
| + | |||
| + | * Now you may connect your PC and N900. | ||
| + | * Update your firewall configuration. Go to System->Administration->Firewall, then choose "Trusted Interfaces" on the left and check "n900" on the right | ||
| + | * Now you may connect to the Internet from n900! | ||
| - | + | [[Category:N900]] | |
Contents |
(This is based largely on the N900 USB Networking page of wiki.maemo.org)
This page describes how to enable Networking on the N900 via USB. The first part describes how to configure the Nokia N900 as a USB pluggable network device. The second part describes how to configure various platforms to use the Nokia N900 as a network device.
The default configuration on MeeGo for N900 has the USB network interface set up. The N900 USB interface will have the IP address 192.168.2.15, and the remote end will have the IP address 192.168.2.14. You will need to set up your host for USB networking as well.
After this is set up, you can ssh into your MeeGo installation:
ssh root@192.168.2.15
Password is 'meego'. The 'scp' and 'ssh' tools should be available from within the device and you can transfer files in and out with them. You should also be able to run 'yum install' now, to install packages.
You will need to set up a default route to your host IP:
route add default gw 192.168.2.14
If after having fixed the routing table you still are not able to ping the outside world try to add a nameserver to /etc/resolv.conf:
# added Google DNS nameserver 8.8.8.8 nameserver 8.8.4.4
Or put in your own ISP nameservers.
The Host configuration is detailed in the Maemo 4.x USB Networking wiki. Please refer to it for details. Notice! Ethernet module has changed from cdc_ether to cdc_eem.
Notice! Ethernet module has changed from cdc_ether to cdc_eem.
Create the file in /etc/udev/rules.d/99-nokia-n900.rules and put in the following lines:
SUBSYSTEM=="net", ACTION=="add", ATTRS{idVendor}=="0421", ATTRS{idProduct}=="01c8", ATTRS{manufacturer}=="Nokia", ATTRS{product}=="N900 (PC-Suite Mode)", NAME="n900"
#SUBSYSTEM=="net", ACTION=="add", ATTRS{idVendor}=="0421", ATTRS{idProduct}=="01c8", ATTRS{manufacturer}=="Nokia", ATTRS{product}=="N900 (PC-Suite Mode)", NAME="n900p"
Note that the udev configuration above may not work in Debian squeeze. This rule renames either the usb network interface (usb0) or the usb phone net interface (usbpn0) to interface called n900. Since the two rules above are identical, the choice is made seemingly at random. Making the rules more accurate by adding a DEVPATH key helps:
SUBSYSTEM=="net", ACTION=="add", DEVPATH=="/devices/pci0000:00/0000:00:1a.7/usb1/1-2/1-2:1.8/net/usb0", ATTRS{idVendor}=="0421", ATTRS{idProduct}=="01c8", ATTRS{manufacturer}=="Nokia", ATTRS{product}=="N900 (PC-Suite Mode)", NAME="n900"
SUBSYSTEM=="net", ACTION=="add", DEVPATH=="/devices/pci0000:00/0000:00:1a.7/usb1/1-2/1-2:1.0/net/usbpn0", ATTRS{idVendor}=="0421", ATTRS{idProduct}=="01c8", ATTRS{manufacturer}=="Nokia", ATTRS{product}=="N900 (PC-Suite Mode)", NAME="n900p"
Your DEVPATH may be different though, depending on which USB port is used on the host computer etc. You can use
udevadm monitor --kernel
while plugging in the N900 to see what is the correct path.
After adding the udev rules, you have to reload them with:
udevadm control --reload-rules
Then edit /etc/network/interfaces and add:
allow-hotplug n900
auto n900
iface n900 inet static
address 192.168.2.14
netmask 255.255.255.0
up iptables -A POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE
up echo 1 > /proc/sys/net/ipv4/ip_forward
down iptables -D POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE
down echo 0 > /proc/sys/net/ipv4/ip_forward
Now put your usb cable in the pc and in the n900 and on the host. To check that everything is set up properly you can run:
ifconfig n900
Note: these instructions should be fixed/improved:
Notice! Ethernet module has changed from cdc_ether to cdc_eem.
SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_ether", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900"
SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_phonet", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900pn"
auto n900
iface n900 inet static
address 192.168.2.14
netmask 255.255.255.0
up iptables -A POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE
up echo 1 > /proc/sys/net/ipv4/ip_forward
down iptables -D POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE
down echo 0 > /proc/sys/net/ipv4/ip_forward
stop on net-device-removed INTERFACE=$INTERFACE
with:
stop on net-device-remove INTERFACE=$INTERFACE
(Note the difference: net-device-removed)
udevadm control --reload-rules
sudo /etc/init.d/network-manager restart
or
sudo service network-manager restart
If you are unable to autoconnect through the networking applet, you may need to manually bring up the interface:
ifup n900
If all went fine:
start on n900-up script iptables -A POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forward end script
start on n900-down script iptables -D POSTROUTING -t nat -s 192.168.2.15/32 -j MASQUERADE echo 0 > /proc/sys/net/ipv4/ip_forward end script
SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_eem", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900"
SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_eem", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", PROGRAM="/sbin/initctl emit n900-up"
SUBSYSTEM=="net", ACTION=="remove", ENV{ID_USB_DRIVER}=="cdc_eem", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", PROGRAM="/sbin/initctl emit n900-down"
SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_phonet", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900pn"
NAME="n900" TYPE=Ethernet HOTPLUG=yes BOOTPROTO=none IPADDR=192.168.2.14 PREFIX=24 ONBOOT=yes