USB Networking with openSUSE

From Openmoko

(Difference between revisions)
Jump to: navigation, search
Line 42: Line 42:
 
== Configure NAT ==
 
== Configure NAT ==
  
After configuring and starting the USB interface, engaging the host PC as a router, and opening the firewall. You may add a route to  the Freerunner and start network address translation (NAT). It may be best to write short scripts to perform these actions, so they may be invoked without remembering or typing them. In one script, <b>neoFRup.sh</b>
+
After configuring and starting the USB interface, engaging the host PC as a router, and opening the firewall. You may add a route to  the Freerunner and start network address translation (NAT). It may be best to write short scripts to perform these actions, so they may be invoked without remembering or typing them. In one script, <b>neoFRup.sh</b>, place the commands:
 +
 
 +
#! /bin/sh
 +
/sbin/route add -host 192.168.0.202/32 dev usb0
 +
iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
 +
iptables -P FORWARD ACCEPT
 +
 
 +
This script will add the Freerunner to the route tables and enable NAT. When you are finished using the route to your phone, you may undo the above with another script, <b>neoFRdown.sh</b>:
 +
 
 +
#! /bin/sh
 +
/sbin/route del -host 192.168.0.202/32 dev usb0
 +
iptables -t nat -F POSTROUTING

Revision as of 05:27, 22 July 2008

Contents

YaST in openSUSE 10.2

Set up USB interface

First, you must specify the characteristics of the USB connection as a network device. This can be done through YaST. Choose:

YaST -> Network Devices -> Network Card

The network configuration utility will ask you to choose between a setup based on the Network Manager app, or by using ifup. These instructions were written with the latter chosen, though it may very well work using the Network Manager. In the next menu, you will see a list of network devices. If YaST recognizes the connected Freerunner, there will be one device with a name like "RNDIS ethernet gadget". You may select "Edit" to configure this device, or, if it is not present, "Add" it and continue.

In the "Edit" dialog, under the Address tab, choose "Static Address Setup" and set:

IP Address = 192.168.0.200

and

Subnet Mask = 255.255.255.0

Note: If your network setup has the IP range 192.168.0.x already in use, there will be connectivity problems. Next, under the General tab for this device, set:

Firewall Zone -> Internal Zone (Unprotected)

This will allow for the configuration of the firewall, which comes later. Click "Next" to finish configuring this device. (Your primary network device, usually eth0, may be set to use DHCP for addressing, but must have its firewall zone set to "External Zone".) Choose "Finish" in the Configuration Overview to complete the setup and restart networking.


Enable IP Forwarding

To use your host PC as a router for the Freerunner, you must implement IP forwarding. This is also done in YaST:

YaST -> Network Services -> Routing

At the bottom of the dialog, enable "IP Forwarding"; no default gateway is necessary. Choose "Finish" to end routing configuration.

Configure Firewall

The firewall must be configured to allow traffic to and from the Freerunner. Start by:

YaST -> Security and Users -> Firewall

(1) Under the Interfaces tab, confirm that the network device that connects to the internet is in the "External Zone" and the USB device is in the "Internal Zone". (2) In the Allowed Services tab, there is a checkbox labeled "Protect Firewall from Internal Zone". Uncheck it. (3) In the Masquerading tab, check the "Masquerade Networks" box. (4) Clicking "Next" will get to a firewall summary dialog, then clicking "Accept" will configure and restart the firewall.

Configure NAT

After configuring and starting the USB interface, engaging the host PC as a router, and opening the firewall. You may add a route to the Freerunner and start network address translation (NAT). It may be best to write short scripts to perform these actions, so they may be invoked without remembering or typing them. In one script, neoFRup.sh, place the commands:

#! /bin/sh
/sbin/route add -host 192.168.0.202/32 dev usb0
iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
iptables -P FORWARD ACCEPT

This script will add the Freerunner to the route tables and enable NAT. When you are finished using the route to your phone, you may undo the above with another script, neoFRdown.sh:

#! /bin/sh
/sbin/route del -host 192.168.0.202/32 dev usb0
iptables -t nat -F POSTROUTING
Personal tools

YaST in openSUSE 10.2

Set up USB interface

First, you must specify the characteristics of the USB connection as a network device. This can be done through YaST. Choose:

YaST -> Network Devices -> Network Card

The network configuration utility will ask you to choose between a setup based on the Network Manager app, or by using ifup. These instructions were written with the latter chosen, though it may very well work using the Network Manager. In the next menu, you will see a list of network devices. If YaST recognizes the connected Freerunner, there will be one device with a name like "RNDIS ethernet gadget". You may select "Edit" to configure this device, or, if it is not present, "Add" it and continue.

In the "Edit" dialog, under the Address tab, choose "Static Address Setup" and set:

IP Address = 192.168.0.200

and

Subnet Mask = 255.255.255.0

Note: If your network setup has the IP range 192.168.0.x already in use, there will be connectivity problems. Next, under the General tab for this device, set:

Firewall Zone -> Internal Zone (Unprotected)

This will allow for the configuration of the firewall, which comes later. Click "Next" to finish configuring this device. (Your primary network device, usually eth0, may be set to use DHCP for addressing, but must have its firewall zone set to "External Zone".) Choose "Finish" in the Configuration Overview to complete the setup and restart networking.


Enable IP Forwarding

To use your host PC as a router for the Freerunner, you must implement IP forwarding. This is also done in YaST:

YaST -> Network Services -> Routing

At the bottom of the dialog, enable "IP Forwarding"; no default gateway is necessary. Choose "Finish" to end routing configuration.

Configure Firewall

The firewall must be configured to allow traffic to and from the Freerunner. Start by:

YaST -> Security and Users -> Firewall

(1) Under the Interfaces tab, confirm that the network device that connects to the internet is in the "External Zone" and the USB device is in the "Internal Zone". (2) In the Allowed Services tab, there is a checkbox labeled "Protect Firewall from Internal Zone". Uncheck it. (3) In the Masquerading tab, check the "Masquerade Networks" box. (4) Clicking "Next" will get to a firewall summary dialog, then clicking "Accept" will configure and restart the firewall.

Configure NAT

After configuring and starting the USB interface, engaging the host PC as a router, and opening the firewall. You may add a route to the Freerunner and start network address translation (NAT). It may be best to write short scripts to perform these actions, so they may be invoked without remembering or typing them. In one script, neoFRup.sh