WAG354G or WRT54GL?

TheRift

Expert Member
Joined
Apr 20, 2008
Messages
2,540
Reaction score
20
Location
Cape Town
Ugh! Only a few days into this double pppoe connection on my netgear and I'm irritated already. It kinda doesn't know what the heck it's external IP should be. Do RDP from the office to the one IP, but the admin interface is accessible on the other. Dodge.

I have a DG834G router, was looking at OpenWRT but I ran when I read about incomplete builds, etc. :P

I want to permanently run 2 accounts, one international and the other local with the usual routing people do here.

Was looking at the WRT54GL router and the WAG354G from Linksys.

WRT54GL has no ADSL modem, so I'm going to have to put the DG834G into dumb mode as a modem. The WRT54GL will then have to connect the 2 PPPOE accounts.

Now, for the WAG354G:

1. can it support alternative firmware like the WRT54GL?
2. can it do 2 PPPOE connections or have Linksys gone and done away with the Linux-type kernel?

Has anyone with the WRT54GL and DD-WRT firmware managed to add anything to the web interface to handle a 2nd ADSL account directly? The problem I've had with the Netgear is that the local account seems to die now and again and there's no auto reconnect on it, so you don't know it's dead until quite some time later. It might also just be some issue with IP renewal.

Essentially, can I do 2 connections, etc, on a WAG354G in the same way a combo of WRT54GL + DG834G modem will?
 
Shuweet! :D Thanks. :D I've read that thread before which is why I looked at the Linksys stuff, was just wondering about there other router. Did some reading on DD-WRT and the WAG isn't supported. I'll try and find one tomorrow, hopefully cheaper than from Digital Planet. Hopefully the outlay pays for itself in a couple of months.
 
That is some fantastic stuff, mate! :) You've done some awesome work there.

I'm running 10b scripts for startup and firewall. Very nicely done. Sure wish DD-WRT had shorewall on it, would make the iptable life so much easier. :)

I only have one issue at the moment and that's DDNS with dyndns.net. The update happens, but it's IP 1.3.26.1 :P Using international SAIX(TI) and local IS(WA) accounts, script at the end is set as follows:

Code:
#Configuration

conn 0 int $saixsmtp
#news 0 $saixnews 330 $mypc
#serv 0 tcp 22484 $mypc
link 0 $intname $intpass $amber

conn 1 loc
ddns 1 $ddsyst $dduser $ddpass $ddhost $ddchip $ddpage serv 1 tcp 3389 $mypc
#serv 1 tcp 91 $mycam
link 1 $locname $locpass $dmz

$ddchip and $ddpage are set to formstar.net and /chkip

If I'm not mistaken, the links are up at the point so not understanding why it finds that IP number. Unless I've missed something completely.
 
I only have one issue at the moment and that's DDNS with dyndns.net. The update happens, but it's IP 1.3.26.1 :P Using international SAIX(TI) and local IS(WA) accounts, script at the end is set as follows:

$ddchip and $ddpage are set to formstar.net and /chkip

I have the same problem. It's quite weird.

if you go to http://formstar.net/chkip/ you will get your correct local ip address, but inadyn sees something different. Perhaps it is has to do with my php script on the site, or some freaky stuff from the host.

Other ddns users on the Linksys script have created their own ip address servers, and have run ddns successfully. Using their servers I have also run it successfully.

I found this which may work:
$ddchip=whatsmyip.co.za
$ddpage=/ddclient.php
 
Last edited:
I will give that a try. Thanks. :)

I'm now having an issue with telnet and ssh. They're enabled, but suddenly they're not starting up. Was on telnet earlier, then suddenly says I can't fork any more processes. Memory used went up to 98% and didn't back down again. Not sure why that's happening now. As is, the unit consumes 75-80% memory. Have you experienced that before? I read something on dd-wrt forums that it might be related to looping scripts.

But other than fighting that battle now, I'm pleased to announce that I can connect to RDP on local only account and I haven't wasted any international bandwidth since reboot @ 2AM this morning. :)
 
It still winds up putting in 1.3.26.1 for DDNS. Now, this is a bit silly, but doesn't "1.3.26.1" seem like a version number to you? Perhaps maybe just possibly somehow the version of gzip compression on remote server? HTTP compression model coming through in a header maybe throwing things off and looking like an IP number? :P

Pity inadyn doesn't take an IP number on its command line. "nvram get wan_ipaddr" will give the local one to me, ad "nvram get wan_ipaddr_buf" gives me my international IP.
 
It still winds up putting in 1.3.26.1 for DDNS. Now, this is a bit silly, but doesn't "1.3.26.1" seem like a version number to you? Perhaps maybe just possibly somehow the version of gzip compression on remote server? HTTP compression model coming through in a header maybe throwing things off and looking like an IP number? :P

Pity inadyn doesn't take an IP number on its command line. "nvram get wan_ipaddr" will give the local one to me, ad "nvram get wan_ipaddr_buf" gives me my international IP.


That's interesting. The only common denominator is that both my scirpt and the one on the site above are both php. Successful ip servers that I have used were asp. So it looks increasingly like a php issue. I'll investigate further.
 
Ah, definitely something there with PHP.

What I've just now is change the startup script to create /tmp/www/cgi-bin directory and then make the following shell script (getwanip.cgi):

Code:
#!/bin/sh
echo `nvram get wan_ipaddr`

and "chmod +x" on it.

I can call this from http://192.168.1.1/user/cgi-bin/getwanip.cgi and I get back my IP address with no extras on it.

Change ddchip and ddpage to call that. Still doesn't work, think it might be sequencing, httpd not ready before inadyn.

Maybe make cgi script on an external server, but if I'm correct then mod_gzip will bugger it up too.

Ah well.. more games when I get home. I'm going to put the mini version on. Memory running low. Can't recall, but does your script work fine with 2.3 mini?
 
Ah well.. more games when I get home. I'm going to put the mini version on. Memory running low. Can't recall, but does your script work fine with 2.3 mini?

No. You need standard version. GL has more memory than GS (which I have). I've never had memory problems, so maybe you are running more services from the GUI than you need.
 
Only read that reply now. Oops. Already put mini generic on. It's working perfectly. I've turned off all services I didn't need in standard version, but still it hit 96-98%. Mini is currently around 85-87% used. Will see how it goes. Perhaps I'm not understanding how the memory is used (cached, etc.). Will read a bit later. For now the routing seems fine. It took your script without a hitch. :) I'll try the RDP later.

Changed the php script to a perl script and still the same problem, so it must be a mod_gzip thing on the remote apache server. I'll pull headers in a bit and confirm. Tried to get a cgi script on the httpd on the router and I can access from my PC, but router won't fetch it from the shell. Needs authentication. Telnet to port 80, write the HTTP GET request with a basic auth entry and still just blank. :P Fairly annoying. Guess I could just cron a wget script to call something external which will pick up the IP and hostname from the URL and do the dyndns update for me.

How did everyone else get the inadyn to function properly?
 
Last edited:
Taking the long route...

Built wget 11.1 and created PHP script on my hetzner account:

Code:
<html>
<body>
<?
$ip = $_SERVER['REMOTE_ADDR'];
$username = "my_username"; // dyndns.com login
$password = "my_password"; // dyndns.com password
system("./bin/wget 'http://$username:[email protected]/nic/update?hostname=$host&myip=$ip&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG\" -O -");
?>
</body>
</html>

Script has simple GET var called "host" for the host name to change on dyndns.com.

In startup script added:

Code:
dd2uri=http://myhetzneraccount.co.za/getclientip.php
dd2hostloc=local.hostname.com
dd2hostint=intnl.hostname.com

ddns2 () {
  mkdir /tmp/ddns2_$1
  echo "wget '$dd2uri?host=$2' -O /tmp/ddns2_$1/ddns2.log" >>  /tmp/build.ppp$1
}

con 0 int
ddns2 0 $dd2hostint
link 0...

con 1 loc
ddns2 1 $dd2hostloc
link 0...

Seems to work alright. :)
 
Left dd-wrt mini web interface running all night. Same story, hits 95% memory used, stops indicating CPU usage, says cannot fork new processes when telnet'd in. :P httpd leaking?
 
Oops. Change this silly script a bit... they banned my name registration. Was updating too much from all the reboots. :P

Code:
<html>
<body>
<?
$ip = $_SERVER['REMOTE_ADDR'];
$oip = gethostbyname($host);
$username = "my_username"; // dyndns.com login
$password = "my_password"; // dyndns.com password
if ($ip != $oip)
{
system("./bin/wget 'http://$username:[email protected]/nic/update?hostname=$host&myip=$ip&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG\" -O -");
}
else
{
echo "No change needed";
}
?>
</body>
</html>

The router is running nicely now. I put on v23sp2 with VPN. Slightly annoyed by the lack of storage for the keys and what seems like a bug that clears out the server certificate info from nvram. :P But working like a charm now, just have to store the VPN certs on my hetzner account and download on boot up. Only thing missing from openvpn support on the GUI is user/password authentication stuff. So now it's part of my startup script which is now getting to the point of eating up all of the 32K nvram. :P

This stuff is good fun. :)
 
Top
Sign up to the MyBroadband newsletter
X