i've extracted option 60It is not necessary to include option 60 for Sky/NowTV (though doesn't hurt).
2.90.2471.R|004|NR801|xxxxxxxxxxxx and converted to hex
option 60 I extracted but understand any combination can be used i.eI believe the username can't quite be anything, it has to be 12 hexadecimal digits. Something like abcdef123456@nowtv|abcd1234 would suffice.
dsklfjdsklfewui9e7r@nowtv|zzzzzzzz and converted to hex
It's currently running V5.13(AAVF.12)C0 There is one newer version available on their ftp site should I upgrade?While I do not own a VMG3925-B10B, I note that this (http://ftp://ftp2.zyxel.com/VMG3925-B10B/user_guide/VMG3925-B10B_V5.13_5.50.pdf) version of the manual includes on page 125
LABEL | DESCRIPTION |
Option 61 | Select this and enter any string that identifies the device. |
IAID | Enter the Identity Association Identifier (IAID) of the device, for example, the WAN connection index number. |
DUID | Enter the hardware type, a time value and the MAC address of the device. |
IAID: 00000000
DUID: 616263646566313233343536406e6f7774767c6162636431323334 (this is abcdef123456@nowtv|abcd1234 as hex)
and then capture the result using Wireshark (like you did for extracting the credentials from the NowTV router) and post it here. The mention of "hardware type" in the manual when describing what goes in the DUID gives a hint that the VMG3925 might not have a hardcoded type field, so we might be able to engineer suitable IAID and DUID hex values which will work on the stock firmware (which was impossible for the VMG8924 due to the hardcoded type bytes sent too).As an aside i've jsut found VMG1312-B10A running Current Firmware Version: V1.00(AAJZ.1) I could use if this is a better option?The VMG1312-B10A firmware is very similar to that of the VMG8924-B10A and definitely has no versions available which allow direct entry of an option 61 string. They also would not be as good a choice for a combined modem/router/access point as they are only wireless-n capable, not ac like the VMG8924 and VMG3925.
I'm interested to see if @siofjofj patch would work on the new web interface, or if you will need to downgrade to the older web interface.Something similar to my patch certainly could be made (though I'm sorry to say I don't have time to investigate this at the moment) for the VMG3925 with the new web interface, as the patch itself actually has nothing to do with the web interface whatsoever. It is a modification to the DHCP client itself which results in it ignoring what was entered in the IAID field, not sending any of the 'type' bytes and just passing through the DUID field as-is. Bit of a bodge really.
So if the udhcp package here: https://github.com/trejan/VMG3925-B10B/tree/master/dl was edited it might work?Possibly. My patch applied to the options.c file in the source of the VMG8924-B10A, however a quick look at the same file for the VMG3925-B10B reveals somthing very different that is not doing any of the processing of option 61. A quick grep though the entire udhcp source for the strings 'DUID', 'IAID', '61' and '0x3d' (61 in hex) revealed nothing. My assumption would be that the actual option 61 string is now being created somewhere else (no idea where, it will probably need tracing back from the GUI. Could perhaps try grepping through the entire source for some relevant strings?
I have upgrade to f/w ftp://ftp.zyxel.com/VMG3925-B10B/firmware/VMG3925-B10B_5.13(AAVF.13)C0.zipWhat I had more in mind was that there might be an additional box that actually allows direct entry of the string when on the latest firmware. I take it this is not the case then and the manual is a little unclear.
When I try and add DUID abcdef123456@nowtv|abcd1234 I get a "No special characters allowed" error it does however accept the hex value like the previous firmware i.e 616263646566313233343536406e6f7774767c6162636431323334
I will now need to go to my friends house and try it on their nowtv line to see if it works/capture wireshark. If it doesn't work is there anything else I can try while i'm there to save me making another trip?I am next to certain the configuration you currently have will not work. Try capturing the result using Wireshark first (you will need to create a broadband connection of type 'Ethernet' that is otherwise set up with the same parameters as you would use for VDSL, then capture the result using a PC connected to the Zyxel's WAN port). What we need for this to work is for the captured option 61 parameter to be exactly the same hex string you inputted preceded by 3d 1b (3d = 61 in decimal for the option type and 1b = 27 in decimal for the length of the string). If you post exactly what wireshark captures we may be able to come up with something.
+int opt61ValEncode(char *iaid, char *duid, char *encVal, int tag){
+ if(encVal)
+ strcpy(encVal,"");
+
+ //*(iaid+4)='\0';
+
+ int strLen = 1+4+2+(strlen(duid)/2);
+ char tagStr[2]={0};
+ char hexLen[2]={0};
+
+ intToHexStr(tag,tagStr);
+ strcat(encVal,tagStr);
+
+ intToHexStr(strLen,hexLen);
+ strcat(encVal,hexLen);
+
+ strcat(encVal,"ff");
+ strcat(encVal,iaid);
+ strcat(encVal,"0002");
+ strcat(encVal,duid);
+
+ return 1;
+}
+int opt61ValEncode(char *iaid, char *duid, char *encVal, int tag){
+ if(encVal)
+ strcpy(encVal,"");
+
+ //*(iaid+4)='\0';
+
+ int strLen = strlen(duid)/2;
+ char tagStr[2]={0};
+ char hexLen[2]={0};
+
+ intToHexStr(tag,tagStr);
+ strcat(encVal,tagStr);
+
+ intToHexStr(strLen,hexLen);
+ strcat(encVal,hexLen);
+
+ //strcat(encVal,"ff");
+ //strcat(encVal,iaid);
+ //strcat(encVal,"0002");
+ strcat(encVal,duid);
+
+ return 1;
+}
Which simply removes the parts of the code which insert 0xff, the IAID, 0x00 and 0x02. It also modifies the string length computation such that it gives the right value with all the other stuff removed.=abcdef123456@nowtv|abcd1234
0000 ff ff ff ff ff ff 5c 6a 80 5d bd 3f 08 00 45 00 ......\j.].?..E.
0010 02 40 00 00 00 00 40 11 78 ae 00 00 00 00 ff ff .@....@.x.......
0020 ff ff 00 44 00 43 02 2c 78 55 01 01 06 00 60 82 ...D.C.,xU....`.
0030 dd 47 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .G..............
0040 00 00 00 00 00 00 5c 6a 80 5d bd 3f 00 00 00 00 ......\j.].?....
0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0110 00 00 00 00 00 00 63 82 53 63 35 01 01 3d 1b 61 ......c.Sc5..=.a
0120 62 63 64 65 66 31 32 33 34 35 36 40 6e 6f 77 74 bcdef123456@nowt
0130 76 7c 61 62 63 64 31 32 33 34 37 06 01 03 06 0c v|abcd12347.....
0140 0f 1c ff 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
01f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0210 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0230 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..............
So looks like it's done the trick :cool:Agreed, it looks good. This will almost certainly work on VDSL now. Just a pointer on this, when my connect my VMG8924 to my NowTV VDSL connection the WAN connection initially fails, and takes a few minutes to connect after the VDSL connection has synced. Not sure why this is, but if you find your VMG3925 fails to connect just wait a few minutes and see if it comes up.