Difference between revisions of "Actiontec modems"

From FreekiWiki
Jump to navigation Jump to search
m (Some useless but interesting background)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Linux boxes have difficulty connecting through Actiontec modems.  The problem is that the modem supplies its own IP address as one of the nameservers, and it is apparenly non-standard enough so this will not work with our boxen.
+
Linux boxes have difficulty connecting through Actiontec modems.  The problem is that the modem supplies its own IP address as one of the nameservers, and it is apparenly non-standard enough so this will not work with our boxen. This is actually a bug in the actiontec firmware as evidenced by the contents of /etc/udhcpd.conf on one of the modems.
 +
# cat /etc/udhcpd.conf
 +
start 192.168.0.2
 +
end 192.168.0.254
 +
interface br0
 +
opt router 192.168.0.1
 +
opt domain domain.actdsltmp
 +
opt dns 192.168.0.1 205.171.3.25
 +
opt subnet 255.255.255.0
 +
opt lease 86400
 +
conflict_time 86400
 +
lease_file /var/tmp/udhcpd.leases
  
Solution:  Set the linux box to a static IP in 192.168.0.x range, with a gateway of 192.168.0.1 and subnet mask of 255.255.255.0, and give it static dns address(es). The DNS address will vary from one ISP to another, but may generally be found by searching on google for "<ISP name> DNS server".
+
 
 +
==Static ip solution==
 +
Set the linux box to a static IP in 192.168.0.x range, with a gateway of 192.168.0.1 and subnet mask of 255.255.255.0, and give it static dns address(es). The DNS address will vary from one ISP to another, but may generally be found by searching on google for "<ISP name> DNS server".
  
 
You need to edit /etc/network/interfaces to set the static IP
 
You need to edit /etc/network/interfaces to set the static IP
  
Edit /etc/resolv.conf to set the nameservers
+
Edit /etc/resolv.conf to set the nameservers on a Debian box.  On Ubuntu, both IP and DNS can be set with System>Administration>Networking.
  
 
[[ISP setup info]]
 
[[ISP setup info]]
  
;Another solution
+
==bind9 solution==
 +
The following solution has been tested on several boxes now and seems to work well, without the hassle of static ip configuration.  Especially good is that the box will still work if connected to a different network.
 +
 
 
  apt-get install bind9
 
  apt-get install bind9
 
  echo 'supersede domain-name-servers 127.0.0.1;' >> /etc/dhclient.conf
 
  echo 'supersede domain-name-servers 127.0.0.1;' >> /etc/dhclient.conf
 
  dhclient
 
  dhclient
 +
 +
You might want to add the resolvconf utility which has been seen to help on a dapper box
 +
 +
apt-get install resolvconf
 +
 +
==dhclient.conf method==
 +
Open /etc/dhcp3/dhclient.conf
 +
 +
sudo nano /etc/dhcp3/dhclient.conf
 +
 +
Find this section
 +
<pre>
 +
#prepend domain-name-servers 127.0.0.1;
 +
request subnet-mask, broadcast-address, time-offset, routers,
 +
        domain-name, domain-name-servers, host-name,
 +
        netbios-name-servers, netbios-scope, interface-mtu;
 +
</pre>
 +
and edit it so it looks like this (remove the '#' from 'prepend', put your dns server in place of 127.0.0.1 and remove 'domain-name-servers' from 'request'
 +
<pre>
 +
prepend domain-name-servers yourdnsserver1, yourdnsserver2;
 +
request subnet-mask, broadcast-address, time-offset, routers,
 +
        domain-name, host-name,
 +
        netbios-name-servers, netbios-scope, interface-mtu;
 +
</pre>
 +
On an actiontec modem you should be able to look up what your dns servers should be through the web interface at 192.168.0.1
 +
 +
==Network-Manager method==
 +
In newer versions of ubuntu (8.10 and up) you can use network-manager to work around this actiontec dns issue. The benefits of using Network-Manager instead of the above solutions is that you can configure it on a per connection basis (meaning these settings won't muck up your computer if you take it somewhere else) and the fact that it can be set up entirely through the GUI.
 +
 +
Right click Network-Manager and select 'Edit Connections...'
 +
 +
[[Image:network-manager-menu.png]]
 +
 +
If you are connecting to your actiontec modem using wireless you should edit the profile already created under 'Wireless' or if you are using a wired connection select 'Add' to create a new wired profile.
 +
 +
[[Image:network-manager-editconnections.png]]
 +
 +
Select the 'IPv4 Settings' tab and change the 'Method' in the drop down menu from 'Automatic (DHCP)' to 'Automatic (DHCP) adresses only'. Now you need to type your isp's dns servers where it says 'DNS Servers:'.
 +
 +
[[Image:network-manager-editprofiles.png]]
  
 
[[Category:Tech support]]
 
[[Category:Tech support]]

Latest revision as of 16:47, 23 June 2010

Linux boxes have difficulty connecting through Actiontec modems. The problem is that the modem supplies its own IP address as one of the nameservers, and it is apparenly non-standard enough so this will not work with our boxen. This is actually a bug in the actiontec firmware as evidenced by the contents of /etc/udhcpd.conf on one of the modems.

# cat /etc/udhcpd.conf 
start 192.168.0.2
end 192.168.0.254
interface br0
opt router 192.168.0.1
opt domain domain.actdsltmp
opt dns 192.168.0.1 205.171.3.25
opt subnet 255.255.255.0
opt lease 86400
conflict_time 86400
lease_file /var/tmp/udhcpd.leases


Static ip solution

Set the linux box to a static IP in 192.168.0.x range, with a gateway of 192.168.0.1 and subnet mask of 255.255.255.0, and give it static dns address(es). The DNS address will vary from one ISP to another, but may generally be found by searching on google for "<ISP name> DNS server".

You need to edit /etc/network/interfaces to set the static IP

Edit /etc/resolv.conf to set the nameservers on a Debian box. On Ubuntu, both IP and DNS can be set with System>Administration>Networking.

ISP setup info

bind9 solution

The following solution has been tested on several boxes now and seems to work well, without the hassle of static ip configuration. Especially good is that the box will still work if connected to a different network.

apt-get install bind9
echo 'supersede domain-name-servers 127.0.0.1;' >> /etc/dhclient.conf
dhclient

You might want to add the resolvconf utility which has been seen to help on a dapper box

apt-get install resolvconf

dhclient.conf method

Open /etc/dhcp3/dhclient.conf

sudo nano /etc/dhcp3/dhclient.conf

Find this section

#prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, host-name,
        netbios-name-servers, netbios-scope, interface-mtu;

and edit it so it looks like this (remove the '#' from 'prepend', put your dns server in place of 127.0.0.1 and remove 'domain-name-servers' from 'request'

prepend domain-name-servers yourdnsserver1, yourdnsserver2;
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, host-name,
        netbios-name-servers, netbios-scope, interface-mtu;

On an actiontec modem you should be able to look up what your dns servers should be through the web interface at 192.168.0.1

Network-Manager method

In newer versions of ubuntu (8.10 and up) you can use network-manager to work around this actiontec dns issue. The benefits of using Network-Manager instead of the above solutions is that you can configure it on a per connection basis (meaning these settings won't muck up your computer if you take it somewhere else) and the fact that it can be set up entirely through the GUI.

Right click Network-Manager and select 'Edit Connections...'

Network-manager-menu.png

If you are connecting to your actiontec modem using wireless you should edit the profile already created under 'Wireless' or if you are using a wired connection select 'Add' to create a new wired profile.

Network-manager-editconnections.png

Select the 'IPv4 Settings' tab and change the 'Method' in the drop down menu from 'Automatic (DHCP)' to 'Automatic (DHCP) adresses only'. Now you need to type your isp's dns servers where it says 'DNS Servers:'.

Network-manager-editprofiles.png