The Zyxel AMG1302-T10B...
Smart ISPs (Like Fuel Broadband - free plug, though God knows why!) are giving away the Zyxel AMG1302-T10B for FREE.
This is an IPv6 capable N-Class (300Mb/s) ADSL modem / 4-port router with all the usual goodies (as well as a few neat extras). It's not Gigabit on the Ethernet side, so you will probably want to use it solely as a modem, routing the data to an decent OpenWRT box or similar to handle the faster home networking (LAN) side.
And did I mention that it is IPv6 capable! More than can be said for Fuel Broadband.
The Command Line Interface (CLI) looks interesting, being a hybrid of a traditional router API on top of a nice Linux back-end. But where is the manual? Here we go again...
Note: This page is notes, started 2015-6-4, the day I received this Zyxel in the post. Some is non-linear, everything is in progress, my main goal being to get the important information out there, as well as create a place we can dump updates and info, discoveries, tricks, tips and such-like.
Not a lot is known about this router. OpenWRT doesn't have a firmware for it. There is no CLI Manual anywhere (so far). The source code is also missing (it's Linux in there) for now. Legally speaking, this must change soon - keep an eye on this page for updates.
The web interface is actually fairly comprehensive and decently laid out. Most of the things you will need to achieve can be done there.
Some of it is not so good. Adding static DHCP leases, for one, is dreadful. They should take a look at OpenWRT. Fortunately, I don't use my modem for providing IP addresses, so I won't have to suffer it. There will be a way to accomplish from the shell, no doubt..
Telnet in (you get more commands in a telnet session than an SSH session, so it makes sense to use telnet, at least inside your local network) and you get a Linux shell..
The available commands:
CAdecoder dd igmpproxy ping6 tcci ConfigFilter delgroup inadyn portbindcmd tce EmappS deluser inetd ppp_monitor tcwdog \[ dhcp6c init pppcmd test ac dhcp6s insmod pppd tftp acl dhcpdetector ip pppoe-relay tftpd addgroup dhcrelay ip6tables pppstat top adduser dirname ipcs ps tr069 adslcmd dmesg iptables ptmcmd tr69 adslstat dnsmasq iwpriv pwd traceroute algcmd dropbear kill qoscmd traceroute6 arp ebtables killall radvd true ash echo klogd reboot udhcpc ated ecmh ln ripd udhcpd atmcmd email4log login rm umount autoFwUpgrade env ls rmdir uname awk ethcmd lsmod rmmod uptime basename expr maceui route usleep bftpd ez-ipupdate mailsend rt2860apd utelnetd boa false md5 run-parts vah br2684ctl firewallcmd mdev sed vahcmd brasinfo free mkdir sh vconfig brctl freeMemory more sleep w busybox ftpget mount smuxctl wan cat ftpput mtd snmpd wc cfg_manager ftpset mtr sys wget chmod getty mv syscmd wlan cp grep netstat sysctl wlancmd cpu head nslookup sysdiagd wscd crond hostname ntpclient syslogd yes cut hw_nat passwd taskset zebra cwmpcmd ifconfig pidof tc date igmp ping tcapi
As you can see, we are dealing with a hybrid of a traditional router configuration API over a Linux+busybox base. This is interesting in many ways.
Most importantly, it means that Zyxel will have to produce the source code for this beastie some time soon, meaning that OpenWRT et al will get to dump a tarball on it some time in the future. Happy days!
Sadly, some of the commands don't work in the way we expect. Many commands look similar or identical to other, known router commands, but operate completely differently, or have different syntax.
But some work fine..
How to significantly increase your ADSL Line Speed..
This is the first thing I needed to hack. My old modem (a D-Link DSL-2680) had a comprehensive command line interface where one could tweak all sorts of things. By tweaking the Signal-To-Noise ratio on your ADSL line, you can increase your upload speed slightly and your download speed significantly.
At my old residence, a few miles rom the exchange, the default settings got me around 6Mb/s. By tweaking the Signal-To-Noise ratio offset, I could get over 8.5Mb/s. Not bad.
In my current residence, a mile from the exchange, the default settings get me 8.5Mb/s. My tweaked router increases my line speed to over 15Mb/s! That's almost double!
Here's how to do it in a Zyxel AMG1302-T10B (and in the D-Link!)..
wan dmt2 set snrmoffset <NUMBER> <NUMBER> wan adsl reset
After a minute or two, your line will resync and your speed will shoot up. Technically, you could probably do wan down, set snr, wan up; but I like to reset it each time.
The tricky part is deciding what to use for <NUMBER>. Basically, you multiply the Gain (in dB) by
512 and then deduct
1792. The defaults are usually
1024, or something equally silly (a number that caters for all users, no matter how far they are from the exchange, I guess).
I recommend you start with perhaps
3072, and work up from there. Run a few broadband speed tests after each wan reset and keep increasing the number until your ping time shoots up or transfers become erratic (loads of errors would also be seen in your router's system info page).
This close to the exchange, I can set a 15db gain before the line starts to crap out, which is
5888. 16dB on a dry day! Once you find the number, you set-and-forget..
Except you don't..
For now, I have no way of setting this permanently, meaning that if the router gets rebooted, the command would have to be executed again. There is no autoexec.net, as found in other similar routers and I haven't had time to experiment with other methods.
Until I get a CLI Reference or someone gives me a heads-up, I'll be using A.R.S.E to send the command, so it's reduced to a single click on my Windows desktop.
An ARSE script to set the SNR might look like this..
wan dmt2 set snrmoffset 5888 5888 wan adsl reset
Goodbye Zyxel AMG1302-T10B..
Since writing this, and after much email wrangling, I finally received confirmation that there is, in fact, no way to set this permantly. Bummer.
So that's where this page ends. The Zyxel is still a decent wee router for the price (free), but until these sorts of hacks can be set-and-forgotten-about, my interest in hacking this particular device is lost.