| Please visit ph-mb.com for ExPVR (The Sky+ Recording Copier & Extractor)
and Sky Router Tool (The Sky Broadband Router Statistics Tool). |
MER
MER or "MAC Encapsulated Routing" is a new connection system Sky is currently rolling out to replace PPPoA. In most cases, once upgraded, both systems are available, but Sky now seem to be deactivating PPPoA for some users. What this means is that people using 3rd party routers will find themselves unable to connect.
Some routers do now support MER, but with MER connections Sky use a slightly modified DHCP client (what this means is that you will not be able to obtain an IP address without some tweaks). The thread at http://www.skyuser.co.uk/forum/technical-discussion/46464-skys-mer-why-does-not-work-other-routers.html contains more details about Sky's modifications.
Contents |
MER Settings for Sky
The following settings must be entered on your router:
| Connection Type: | MER / MPoA (RFC1483/2684) |
|---|---|
| Encapsulation: | Bridged IP VC-Mux |
| VPI: | 0 |
| VCI: | 40 |
Getting an IP Address
Unfortunately this step is a bit harder. When the official Sky router requests an IP address, it sends some extra details as "DHCP Options". The details are as follows:
| Vendor Identifier (Option 60): | firmwareversion|2ndHardwareSerial|skysg2|1stHardwareSerial |
|---|---|
| Client Identifier (Option 61) | PPPUsername|PPPPassword |
Thankfully, the vendor identifier does not seem to be required to get an IP address, this could however change in the future.
Sending the Options
The method of sending these options varies for each router, and very few allow it without some tweaking.
Billion BiPAC 7800N
Billion have released a beta firmware with support for setting the required DHCP options used by Sky. It is available on their forums at: http://www.billion.uk.com/forum/viewtopic.php?f=9&t=343.
Netgear DG834 & Similar
For the DG834 (and other similar routers) you can follow the following procedure (thanks go to Lucose for trying this out):
- Telnet into the router
- Type 'ps' and find the PID listed for 'udhcpc' and its command line
- Type 'kill pid', replacing 'pid' with the number found in the last step
- Type the command line previously found, appending it with '-c pppUsername|pppPassword' (replacing with your username and password).
The command will look something like: udhcpc -i nas0 -s /etc/udhcpc.script -c "username|password".
Unfortunately the settings will not persist across router reboots using this method.
Huawei HG521
The procedure for this router (often supplied by TalkTalk) is similar to the Netgear DG834, with some slight command differences.
Setup WAN connection in advanced section of GUI for ease as IPoE, VPI: 0, VCI: 40, Service: Internet, Encapsulation: VCMUX. Save.
Then:
- Telnet into the router
- Type 'sh' to enter BusyBox.
- Type 'cd bin'.
- Type 'ps' and find the PID listed for 'dhcpc' and its command line
- Type 'kill pid', replacing 'pid' with the number found in the last step
- Type the command line previously found, appending it with '-c pppUsername|pppPassword' (replacing with your username and password).
The command will look something like: dhcpc -i nas_0_40 -I nas_0_40 -c "username|password".
Currently untested, but likely settings will not persist between reboots as with the Netgear.
WRT54G & Similar running Tomato
Some versions of Tomato support '-c' client ID option (option 61), however others do not. Where 'udhcpcd' supports '-c' then you may enter '-c PPPusername|PPPpassword' in DHCPC options. An alternate method using '-x' to specify additional DHCPC options (incl option 61) may be used. Where '-x' is used the username & password fields must be translated into a HEX string (see below)
It is not necessary to spoof your original Sky router's MAC address in order to obtain an IP address.
1) Convert your PPPusername|PPPpassword string into HEX - I used http://www.string-functions.com/string-hex.aspx
e.g. 1a2b3c4d5e6f@skydsl|zzc7Zovbt5Fpa7B turns into 31613262336334643565366640736b7964736c7c7a7a63375a6f766274354670613742
2) In 'Advanced->DHCP/DNS DHCPC options enter '-x 61:00' immediately followed by the converted string from above. e.g. '-x 61:0031613262336334643565366640736b7964736c7c7a7a63375a6f766274354670613742' & save.
3) In 'Basic->Network set your network type to DHCP, default MTU & save
The above works in combination with a Draytek Vigor 120 ADSL2+ modem. Settings for that are: MpoA page: MpoA Enabled, Encapsulation: 1483 Bridged IP VC-Mux, VPI 0, VCI 40
Routers Running DD-WRT
(Thanks go to Dragon2611 & Damo82, http://www.skyuser.co.uk/forum/technical-discussion/46464-skys-mer-why-does-not-work-other-routers-13.html#post370921 for trying this).
The instructions are similar to the Netgear ones above, but DD-WRT also has an option to run scripts at startup, so this can be automated.
First test that it is working by telneting into the router and running the following:
killall udhcpc /usr/sbin/udhcpc -i eth1 -c "username@skydsl|password" -p /var/run/udhcpc.pid -s /tmp/udhcpc
Replacing username and password with your PPP username and password. This will kill the running DHCP client and start a new one with the correct client identifier parameters.
If this works, the above commands can be added as a start-up script in the web interface (see http://www.dd-wrt.com/wiki/index.php/Startup_Scripts).