Router Config API Ver 2 0 6
Transcript of Router Config API Ver 2 0 6
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 1/61
zf
ROUTERCONFIG.DLL API
Manual
Document Version 2.0.6
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 2/61
©2006 zConf, LLC. All rights reserved.
2
OVERVIEW ................................................................3
1.1 Introduction.........................................................................................................3
1.2 About This Document .........................................................................................3
EXPORTED METH ODS ..............................................4 2.1 DetectRouter....................................................................................................... 4
2.2 CheckRouterIsValid ............................................................................................ 6 2.3 EnableRouterUPNP............................................................................................7
2.4 DisableRouterUPNP ...........................................................................................9
2.5 OpenRouterPort................................................................................................ 11
2.6 CloseRouterPort ...............................................................................................14
2.7 WaitRouter ........................................................................................................ 17
2.8 OpenPortCheck ................................................................................................19
2.9 CRouterConfigure Class................................................................................... 20
2.9.1 CRouterConfigure Members ...................................................................................................202.9.2 CRouterConfigure Operations.................................................................................................23 2.9.3 CRouterConfigure Member Functions ....................................................................................27
SAM PLE CODE........................................................37
APPENDICES ..........................................................39 Appendix A – Router List ......................................................................................... 40
Appendix B – Firmware Versions.............................................................................45
Table of c ont ent
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 3/61
©2006 zConf, LLC. All rights reserved.
3
Overview
1.1 Introduction
The routerconfig.dll is a Dynamic Linked Library (DLL) that serves
as a utility for programmatically performing operations on broadband andhome routers.
1.2 About This Document
This document describes the APIs and functions that are exposed by thezConf component routerconfig.dll. The document contains thefollowing sections:
• Exported Methods
This chapter describes in details the exposed functions and objects ofthe routerconfig.dll and how they can be used.
• Code sample
This chapter demonstrates how to use several of the methods describedin the Exported Functions chapter.
• Appendices• Appendix A – Router List• Appendix B – Firmware Versions
Overview
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 4/61
©2006 zConf, LLC. All rights reserved.
4
Ex por t ed Met hods
2.1 DetectRouter
SummaryThis function attempts to detect the router connected to the local machine.
Parameters
bTerminate A reference value. The function continues normal execution as long thisparameter is set to false. If this parameter is set to true, the function
terminates immediately.
DefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, the function automatically uses the first default gateway address in the
stack. The default value is NULL lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, the function does not write log information to file.
Username The username used to log into the router
Password
The password used to log into the router
dwTimeOut
The time out value in milliseconds after which the function terminates itself. Themaximum value is 180,000. If given a value larger than 180,000, the dwTimeOut
parameter will be reset to 180,000.
int DetectRouter(
bool * bTerminate,
char * DefaultGatewayAddress = NULL,char * lpszFilename = NULL,
char * Username = NULL,
char * Password = NULL,
DWORD dwTimeOut = 60000,
char * encryPasswd = NULL
)
Exported Method
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 5/61
©2006 zConf, LLC. All rights reserved.
5
encryPasswd
The access code to the DLL.
Return Value .
Return Value Description
-5 Invalid access code
-4 Invalid Default Gateway Address
-3 Operation timed out
-2 Operation terminated
0 No routers identified
1-200 Detected router index
RemarksThis function should be called first before calling any other functions.When the Username and Password parameters are set to NULL, the DetectRouter function attempts to detect the router using the router’s default credentials as well as thedefault IP address of all supported router. If either the router credentials or the defaultrouter IP address were changed, the function may fail to detect the router.
For future reference, on successful detection of the router, this function stores anencrypted string valued registry keys with the router credentials and router index in thefollowing registry entries.
HKEY_CURRENT_USER\Software\zConf\RouterUsername
HKEY_CURRENT_USER\Software\zConf\RouterPassword
HKEY_CURRENT_USER\Software\zConf\RouterModel
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 6/61
©2006 zConf, LLC. All rights reserved.
6
2.2 CheckRouterIsValid
SummaryThis function checks if the router connected to the local machine is accessible with thecurrent credentials and router ID stored in the registry. If CheckRouterIsValid issuccessful, you may use the other stand alone functions without calling theDetectRouter function first.
ParameterslpszFilename
Specifies a string that is the absolute path to the log file. For example:
“C:\\Documents and Settings\\My Documents\\logfile.txt” If set to NULL, the function does not write log information to file.
DefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, the function automatically uses the first default gateway address in the
stack. The default value is NULLencryPasswd
The access code to the DLL.
Return Value .
Return Value Description
-5 Invalid access code
-4 Invalid Default Gateway Address
0 No routers identified
1-200 SUCCESS - Detected router index
RemarksThe CheckRouterIsValid function uses the username, password, and router index
stored in the registry to try to access the router connected to the local machine. Theregistry is only written when the DetectRouter function detects the router successfully.
If the username or password was changed after the DetectRouter function was called,the CheckRouterIsValid function may fail. Same will happen if the router connected
to the local machine was changed.
int CheckRouterIsValid(
char * lpszFilename = NULL,
char * DefaultGatewayAddress = NULL,
char * encryPasswd = NULL)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 7/61
©2006 zConf, LLC. All rights reserved.
7
2.3 EnableRouterUPNP
SummaryThis function attempts to enable the UPnP feature on the router. The function retrievesthe router credentials and index from the following registry entries:
HKEY_CURRENT_USER\Software\zConf\RouterUsername
HKEY_CURRENT_USER\Software\zConf\RouterPassword
HKEY_CURRENT_USER\Software\zConf\RouterModel
ParametersbTerminate
A reference value. The function continues normal execution as long thisparameter is set to false. If this parameter is set to true, the functionterminates immediately.
lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, the function does not write log information to file.
DefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set to
NULL, the function automatically uses the first default gateway address in thestack. The default value is NULL
dwTimeOut
The time out value in milliseconds after which the function terminates itself. Themaximum value is 180,000. If given a value larger than 180,000, the dwTimeOut parameter will be reset to 180,000.
encryPasswd
The access code to the DLL.
Return Value
Return Value Description
-5 Invalid access code
0 SUCCESS
1 Failed to enable UPnP
6 Login Failure
11 Router Identified however UPnP enabling is not supported
int EnableRouterUPNP(
bool * bTerminate,
char * lpszFilename = NULL,
char * DefaultGatewayAddress = NULL,
DWORD dwTimeOut = 60000,
char * encryPasswd = NULL
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 8/61
©2006 zConf, LLC. All rights reserved.
8
17 Failed to identify router
21 Time out occurred or operation terminated
25 Invalid Default Gateway Address
Remarks
The EnableRouterUPNP function uses the username, password, and router indexproperties, stored in the registry, to access the router connected to the local machine.The registry is only written when the DetectRouter function detects the router
successfully. If the username or password were changed or if the router which isconnected to the local machine was replaced after the DetectRouter function was last
called, the EnableRouterUPNP function may fail to enable the UPnP feature on therouter.
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 9/61
©2006 zConf, LLC. All rights reserved.
9
2.4 DisableRouterUPNP
Summary
This function attempts to disable the UPnP feature on the router. The function retrievesthe router credentials and index from the following registry entries:
HKEY_CURRENT_USER\Software\zConf\RouterUsername
HKEY_CURRENT_USER\Software\zConf\RouterPassword
HKEY_CURRENT_USER\Software\zConf\RouterModel
Parameters
bTerminate
A reference value. The function continues normal execution as long thisparameter is set to false. If this parameter is set to true, the function
terminates immediately.
lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, the function does not write log information to file.
DefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, the function automatically uses the first default gateway address in the
stack. The default value is NULL
dwTimeOut
The time out value in milliseconds after which the function terminates itself. Themaximum is 180,000. If given a value larger than 180,000, it will be set to180,000.
encryPasswd
The access code to the DLL.
Return Value
Return Value Description
-5 Invalid access code
0 SUCCESS
1 Failed to disable UPnP
6 Login Failure
11 Router Identified however UPnP disabling is not supported
int DisableRouterUPNP(
bool * bTerminate,
char * lpszFilename = NULL,
char * DefaultGatewayAddress = NULL,DWORD dwTimeOut = 60000,
char * encryPasswd = NULL
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 10/61
©2006 zConf, LLC. All rights reserved.
10
17 Failed to identify router
21 Time out occurred or operation terminated
25 Invalid Default Gateway Address
Remarks
The DisableRouterUPNP function uses the username, password, and router indexproperties, stored in the registry, to access the router connected to the local machine.The registry is only written when the DetectRouter function detects the router
successfully. If the username or password were changed or if the router which isconnected to the local machine was replaced after the DetectRouter function was last
called, the DisableRouterUPNP function may fail to enable the UPnP feature on therouter.
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 11/61
©2006 zConf, LLC. All rights reserved.
11
2.5 OpenRouterPort
Summary
This function attempts to open a port on the router either by using the UPnP interface orby adding a new entry to the “port forwarding” web interface of the routerThe function retrieves the router credentials and index from the following registry entries:
HKEY_CURRENT_USER\Software\zConf\RouterUsername
HKEY_CURRENT_USER\Software\zConf\RouterPassword
HKEY_CURRENT_USER\Software\zConf\RouterModel
ParametersPort
The port number to open. Valid port number is between 1 to 65534.
bTerminate
A reference value. The function continues normal execution as long thisparameter is set to false. If this parameter is set to true, the function
terminates immediately.
lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, the function does not write log information to file.
ForceUPnP
If set to true, the function will attempt to open a port using the UPnP interface
and the PortOverwrite parameter is ignored as this function uses theoperating system UPnP interface .If set to false, the function will attempt to open a port by adding a “port forward”
entry to the router for both UDP and TCP protocol. The Protocol parameter is
then ignored.
PortOverwrite
If set to true and the router already have an entry with the same port as
specified by Port, the function will overwrite that entry with the new one. If set
to false, and the router already have an entry with the same port as specified
by Port, the function does nothing. If no value is specified for this parameter, it
is set to true.
int OpenRouterPort(
int Port,
bool * bTerminate,
char * lpszFilename = NULL, bool ForceUPnP = true,
bool PortOverwrite = true,
char * Internal_IP = NULL,
int Protocol = 1,
char * DefaultGatewayAddress = NULL,DWORD dwTimeOut = 60000,
char * encryPasswd = NULL
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 12/61
©2006 zConf, LLC. All rights reserved.
12
Internal_IP
The internal IP address of the machine for which “port forwarding” is required. Ifset to NULL, the function automatically use the internal IP address of the machine
which calls the function. If no value is specified for this parameter, it is set toNULL.
Protocol
Specifies the protocol type of the port. 0 corresponds to UDP, 1 corresponds toTCP. When the ForceUPnP parameter is set to false, this parameter is
ignored. The default value is 1
DefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, the function automatically uses the first default gateway address in the
stack. The default value is NULL
dwTimeOut
The time out value in milliseconds after which the function terminates itself. Themaximum is 180,000. If given a value larger than 180,000, it will be set to180,000.
encryPasswd
The access code to the DLL.
Return Value
Return Value Description
-5 Invalid access code
1 General Error
2 No available empty entries
3 Unable to connect to router
4 Unknown router or router not supported5 Unknown firmware version
6 Login failure
7 Router submit error
8 Removing existing port failure
9 Add new port failure
10 Port taken failure
11 Manual “Port Forwarding” is not supported. Try using UPnP
12 Port overwrite required
15 Invalid Internal IP Address
16 Invalid Internal IP Address
17 Router credentials required or router not supported
18 Could not identify router
19 No credentials in registry or registry not accessible
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 13/61
©2006 zConf, LLC. All rights reserved.
13
20 Router Identified however not supported
21 Time out occurred or operation terminated
22 Invalid port number
23 Invalid protocol
24 Invalid Internal IP address
25 Invalid Default Gateway Address
80 Failed to open port using UPnP
100 Port was opened using UPnP
0 Port was opened manually
Remarks
When this function is called with the ForceUPnP parameter set to false, the function
will add all ports from the “port forwarding” web interface of the router, as specified byPort, (TCP and UDP).
The OpenRouterPort function uses the username, password, and router index
properties, stored in the registry, to access the router connected to the local machine.The registry is only written when the DetectRouter function detects the router
successfully. If the username or password were changed or if the router which isconnected to the local machine was replaced after the DetectRouter function was last
called, the OpenRouterPort function may fail to open a port on the router.
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 14/61
©2006 zConf, LLC. All rights reserved.
14
2.6 CloseRouterPort
Summary
This function attempts to close a port as specified by Port on the router by using the
UPnP interface or by removing all entries with the same port, as specified by Port, from
the “port forwarding” web interface of the router.The function retrieves the router credentials and index from the following registry entries:
HKEY_CURRENT_USER\Software\zConf\RouterUsername
HKEY_CURRENT_USER\Software\zConf\RouterPassword
HKEY_CURRENT_USER\Software\zConf\RouterModel
ParametersPort
The port number to close. Valid port number is between 1 to 65534.
bTerminate
A reference value. The function continues normal execution as long thisparameter is set to false. If this parameter is set to true, the function
terminates immediately.
lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, the function does not write log information to file.
ForceUPnP
If TRUE, the function will attempt to close a port using the UPnP interface,if set to FALSE, the function will attempt to close a port by removing all “portforward” entries in the router with the same port. When ForceUPnP is set to
false, the Protocol parameter is ignored. The default value is true.
Protocol
Specifies the protocol type of the port. 0 corresponds to UDP, 1 corresponds toTCP. When the ForceUPnP parameter is set to false, this parameter is
ignored. The default value is 1
DefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, the function automatically uses the first default gateway address in the
stack. The default value is NULL
int CloseRouterPort(
int Port,
bool * bTerminate,
char * lpszFilename = NULL,
bool ForceUPnP = true,
int Protocol = 1,
char * DefaultGatewayAddress = NULL,
DWORD dwTimeOut = 60000,
char * encryPasswd = NULL
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 15/61
©2006 zConf, LLC. All rights reserved.
15
dwTimeOut
The time out value in milliseconds after which the function terminates itself. Themaximum is 180,000. If given a value larger than 180,000, it will be set to180,000.
encryPasswd
The access code to the DLL.
Return Value
Return Value Description
-5 Invalid access code
1 General Error
3 Unable to connect to router
4 Unknown router or router not supported
5 Unknown firmware version
6 Login failure
7 Router submit error
8 Removing existing port failure
10 Port taken failure
11 Manually removing port is not supported. Try using UPnP
14 Port not found
17 Router credentials required or router not supported
18 Could not identify router
20 Router Identified however not supported
21 Time out occurred or operation terminated
22 Invalid port number
23 Invalid protocol
25 Invalid Default Gateway Address
80 Failed to close port using UPnP
100 Port was closed using UPnP
0 Port was closed manually
Remarks
When this function is called with the ForceUPnP parameter set to false, the function
will remove all ports from the “port forwarding” web interface of the router, as specified byPort, (TCP and UDP).
The CloseRouterPort function uses the username, password, and router index
properties, stored in the registry, to access the router connected to the local machine.The registry is only written when the DetectRouter function detects the router
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 16/61
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 17/61
©2006 zConf, LLC. All rights reserved.
17
2.7 WaitRouter
Summary
This function waits for the router’s HTTP user interface to become accessible. It uses thecredentials and router ID stored in the registry.
Parameters
bTerminate
A reference value. The function continues normal execution as long thisparameter is set to false. If this parameter is set to true, the function
terminates immediately.
lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, the function does not write log information to file.
DefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, the function automatically uses the first default gateway address in the
stack. The default value is NULL
dwTimeOut The time out value in milliseconds after which the function terminates itself. Themaximum is 180,000. If given a value larger than 180,000, it will be set to180,000.
encryPasswd
The access code to the DLL.
Return Value.
Return Value Description
-5 Invalid access code
-4 Invalid Default Gateway Address-3 Operation timed out
-2 Operation terminated
0 No routers identified – Router is not accessible
1-200 Detected router index – Router is now accessible
int WaitRouter(
bool * bTerminate,
char * lpszFilename = NULL,char * DefaultGatewayAddress = NULL,
DWORD dwTimeOut = 60000,
char * encryPasswd = NULL
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 18/61
©2006 zConf, LLC. All rights reserved.
18
RemarksSome routers need some time period (usually less than 1 minute) to become accessibleafter operations such as EnableRouterUPNP or OpenRouterPort since these
operations may result in a router reboot. The WaitRouter function uses the username,password, and router index properties, stored in the registry, to access the routerconnected to the local machine. If the username or password were changed or if the
router which is connected to the local machine was replaced after the DetectRouter function was last called, the WaitRouter function may fail.
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 19/61
©2006 zConf, LLC. All rights reserved.
19
2.8 OpenPortCheck
Summary
This function serves as utility for remote verifying a TCP port is open or closed.
ParametersPort
The port number to be checked. Valid port number is between 1 to 65534.
encryPasswd
The access code to the DLL.
Return Value
Return Value Description
-5 Invalid access code
1 Failed
22 Invalid port
0 Success - a listening service was seen on the port
RemarksA listening application or a server must reply to the inbound communication check
request.
int OpenPortCheck(
int Port,
char * encryPasswd = NULL)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 20/61
©2006 zConf, LLC. All rights reserved.
20
2.9 CRouterConfigure Class
SummaryThe CRouterConfigure class serves as a utility for router detection and portoperations similar to the stand alone functions described in sections 2.1 - 2.8. However,unlike the stand alone functions described above, the CRouterConfigure class doesnot use the registry.
2.9.1 CRouterConfigure Members
Private data members
_username The username used to log into the router _password The Password used to log into the router _routerID Router Index
_lpszFilename Absolute path to the log file _defaultGatewayAddress The default gateway address of the router _dwTimeOut Timeout parameter _internal_IP The internal IP address of the client machine _bTerminate Termination reference _validAccessCode Access code valid or not
char * _username
The username used to log into the router
char * _password
The password used to log into the router
int _routerID
The router index as described in Appendix Achar * _lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, operations using this property do not write log information to file.
char * _defaultGatewayAddress
The default gateway address of the router. The default value is NULL.
DWORD _dwTimeOut
The time out value in milliseconds after which operations using this propertyterminate themselves.
char * _internal_IP
The internal IP address of the machine. If set to NULL, operations using thisproperty automatically use the internal IP address of the machine which callsthose operations. If no value is specified for this parameter, it is set to NULL.
bool * _bTerminate
A reference value. Operations referring to this value continue normal executionas long as this parameter is set to false. If this parameter is set to true, those
operations terminate immediately.
char * _validAccessCode
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 21/61
©2006 zConf, LLC. All rights reserved.
21
A boolean value. To utilize the CRouterConfigure class, users need an
access code to construct a CRouterConfigure object. _validAccessCode
indicates if the access code provided by the users of the DLL is valid or not.
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 22/61
©2006 zConf, LLC. All rights reserved.
22
Construction
Summary
Each of these constructors initializes a new CRouterConfigure object with the
specified data.
ParametersDefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, the function automatically uses the first default gateway address in the
stack. The default value is NULL lpszFilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”
If set to NULL, the function does not write log information to file.
Username
The username used to log into the router
Password The password used to log into the router
encryPasswd
The access code to the DLL.
RemarksThe constructors initialize the private data members as below:
_username username / NULL
_password password / NULL
_routerID 0
_lpszFilename lpszFilename / NULL
_defaultGatewayAddress defaultGatewayAddress / NULL
_dwTimeOut 60000 _internal_IP NULL
_bTerminate false
_validAccessCode true if the access code is valid
CRouterConfigure::CRouterConfigure(
char * encryPasswd = NULL
)
CRouterConfigure::CRouterConfigure(char * username,
char * password,
char * defaultGatewayAddress,
char * lpszFilename,
char * encryPasswd = NULL
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 23/61
©2006 zConf, LLC. All rights reserved.
23
2.9.2 CRouterConfigure Operations
Get/Set Parameter Operations
SummaryThese functions provide access to the class private data member _username.
Parametersusername
The username used to log into the router
Return Value
The GetUsername() function returns the value of class private data member _username. If the access code is invalid, empty string will be returned instead. And the
_username will not be set in SetUsername().
SummaryThese functions provide access to the class private data member _password .
Parameters password
The password used to log into the router
Return ValueThe GetPassword() function returns the value of class private data member
_password . If the access code is invalid, empty string will be returned instead. And the
_password will not be set in SetPassword().
void CRouterConfigure::SetUsername(char * username)
char* CRouterConfigure::GetUsername()
void CRouterConfigure::SetPassword(char * password)
char* CRouterConfigure::GetPassword()
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 24/61
©2006 zConf, LLC. All rights reserved.
24
SummaryThese functions provide access to the class private data member _routerID.
ParametersrouterID
The router index
Return ValueThe GetRouterID() function returns the value of class private data member
_routerID. If the access code is invalid, “0” will be returned instead. And the
_routerID will not be set in SetRouterID().
SummaryThese functions provide access to the class private data member _defaultGatewayAddress.
ParametersdefaultGatewayAddress
This parameter specifies the default gateway address of the router. If set toNULL, operations using this property automatically use the first default gateway
address in the stack.
Return ValueThe GetDefaultGatewayAddress() function returns the value of class private data
member _defaultGatewayAddress. If the access code is invalid, empty string will be
returned instead. And the _defaultGatewayAddress will not be set in
SetDefaultGatewayAddress().
void CRouterConfigure::SetRouterID(int routerID)
int CRouterConfigure::GetRouterID()
void CRouterConfigure::SetDefaultGatewayAddress
(char * defaultGatewayAddress)
char* CRouterConfigure::GetDefaultGatewayAddress ()
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 25/61
©2006 zConf, LLC. All rights reserved.
25
SummaryThese functions provide access to the class private data member _lpszFilename.
Parametersfilename
Specifies a string that is the absolute path to the log file. For example:“C:\\Documents and Settings\\My Documents\\logfile.txt”.
If set to NULL, operations using this property do not write log information to file.
Return ValueThe GetLogFile() function returns the value of class private data member
_lpszFilename. . If the access code is invalid, empty string will be returned instead.
RemarksThe SetLogFile() function checks the given filename. If it contains special
characters other than “. _ \ :” and space, the _lpszFilename will be set to NULLand operations using this property may not write log information to file. If the access codeis invalid, the _lpszFilename will not be set in SetLogFile().
SummaryThese functions provide access to the class private data member _dwTimeOut.
ParametersdwTimeOut
The time out value in milliseconds after which operations using this propertyterminate themselves.
Return ValueThe GetTimeOut() function returns the value of class private data member
_dwTimeOut. If the access code is invalid, “0” will be returned instead.
RemarksThe SetTimeout() function checks the given parameter _dwTimeOut. If the value is
larger than 180,000, the _dwTimeOut parameter will be reset to 180,000. If the access
code is invalid, the _dwTimeOut will not be set in SetTimeout().
void CRouterConfigure::SetLogFile(char * filename)
char * CRouterConfigure::GetLogFile()
void CRouterConfigure::SetTimeout(DWORD dwTimeOut)
DWORD CRouterConfigure::GetTimeout()
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 26/61
©2006 zConf, LLC. All rights reserved.
26
SummaryThese functions provide access to the class private data member _bTerminate.
ParametersbTerminate
A reference value. Operations referring to this value continue normal executionas long as this parameter is set to false. If this parameter is set to true, thoseoperations terminate immediately.
Return ValueThe GetTerminate() function returns a reference to the class private data member
_bTerminate. If the access code is invalid, “NULL” will be returned instead. And the
_bTerminate will not be set in SetTerminate().
SummaryThese functions provide access to the class private data member _internal_IP.
ParametersinternalIP
The internal IP address of the machine for which “port forwarding” is required. Ifset to NULL, the function automatically use the internal IP address of the machinewhich calls the function. If no value is specified for this parameter, it is set toNULL.
Return ValueThe GetInternalIP() function returns the value of class private data member
_internal_IP. If the access code is invalid, empty string will be returned instead. And
the _internal_IP will not be set in SetInternalIP().
void CRouterConfigure::SetTerminate( bool* bTerminate)
bool* CRouterConfigure::GetTerminate()
void CRouterConfigure::SetInternalIP( bool* internalIP)
bool* CRouterConfigure::GetInternalIP ()
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 27/61
©2006 zConf, LLC. All rights reserved.
27
2.9.3 CRouterConfigure Member Functions
SummaryThis function attempts to detect the router connected to the local machine.
ParametersUseDefaultCrednetials
If set to true, the operation will attempt to detect the router using its default
credentials. If set to false, the operation will use the _username and
_password properties to detect the router.
Return Value
ReturnValue Description
-5 Invalid access code
-4 Invalid Default Gateway Address
-3 Operation timed out
-2 Operation terminated
0 No routers identified
1-200 Detected router index
RemarksWhen UseDefaultCrednetials is set to true, this function uses the following
CRouterConfigure properties: _dwTimeOut, _bTerminate and
_lpszFilename.
When UseDefaultCrednetials is set to false, this function uses the following
CRouterConfigure properties: _defaultGatewayAddress, _dwTimeOut,
_bTerminate, _lpszFilename, _username, and _password .
For future reference, on successful detection of the router, this operation sets the _username, _password , and _routerID properties to the values used to detect the
router.
int CRouterConfigure::DetectRouter(
bool UseDefaultCredentials = true
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 28/61
©2006 zConf, LLC. All rights reserved.
28
SummaryThis function checks if the router connected to the local machine is accessible with thecredentials and router ID stored in the object.
ParametersThis function takes no parameters
Return Value .
Return Value Description
-5 Invalid access code
-4 Invalid Default Gateway Address
-1 Invalid router index
0 No routers identified
1-200 Detected router index
RemarksThe CheckRouterIsValid function uses the _username, _password,
_routerID, _lpszFilename, and _defaultGatewayAddress parameters to
attempt to access the router connected to the local machine. If the _username,
_password , or _routerID were changed after the DetectRouter function was
called, the CheckRouterIsValid function may fail. Same will happen if the router
connected to the local machine was changed. If CheckRouterIsValid is successful,
you may use the other CRouterConfigure functions without calling the
DetectRouter function first.
int CRouterConfigure::CheckRouterIsValid()
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 29/61
©2006 zConf, LLC. All rights reserved.
29
SummaryThis function waits for the router connected to the local machine becoming accessible. Ituses the credentials and router ID stored in the object.
ParametersThis function takes no parameters
Return Value .
Return Value Description
-5 Invalid access code
-4 Invalid Default Gateway Address
-3 Operation timed out
-2 Operation terminated-1 Invalid router index
0 No routers identified
1-200 Detected router index
RemarksSome routers need some time period (usually less than 1 minute) to become accessibleafter operations such as EnableRouterUPNP or OpenRouterPort since these
operations may result in a router reboot. The WaitRouter function uses the
_username, _password, _routerID, _lpszFilename, and
_defaultGatewayAddress parameters to try and access the router connected to thelocal machine. If the _username, _password , or _routerID were changed after the
DetectRouter function was called, the CheckRouterIsValid function may fail.
Same will happen if the router connected to the local machine was changed or replaced.See the sample code section for more information on how this function may be used.
int CRouterConfigure::WaitRouter()
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 30/61
©2006 zConf, LLC. All rights reserved.
30
Router Operations
Summary
This function attempts to enable the UPnP feature on the router.
ParametersThis function takes no parameters
Return Value
ReturnValue
Description
-5 Invalid access code
0 SUCCESS
1 General Error - Failed to enable UPnP
6 Login Failure
17 Failed to identify router
11 Router Identified however UPnP enabling is not supported
21 Time out occurred or operation terminated
25 Invalid Default Gateway Address
RemarksThis operation uses the following CRouterConfigure parameters: _username,
_password, _routerID, _lpszFilename, and _defaultGatewayAddress,
_dwTimeOut and _bTerminate.
Before attempting to enable UPnP, this operation verifies that the router it is connected toand the router credentials are what specified in _username, _password ,
_defaultGatewayAddress and _routerID
int CRouterConfigure::EnableRouterUPnP()
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 31/61
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 32/61
©2006 zConf, LLC. All rights reserved.
32
SummaryThis function serves as utility for remote verifying a TCP port is open or closed.
ParametersPort
The port number to be checked
Return Value.
Return Value Description
-5 Invalid access code
1 Failed
22 Invalid port
0 Success - a listening service was seen on the port
RemarksA listening application or a server must reply to the inbound communication checkrequest.
int CRouterConfigure::OpenPortCheck(int Port);
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 33/61
©2006 zConf, LLC. All rights reserved.
33
Port Operations
SummaryThis operation attempts to open a port on the router either by using the UPnP interface orby adding a new entry to the “port forwarding” web interface of the router.
ParametersPort
The port number to open
ForceUPnP
If set to true, the operation will attempt to open a port using the UPnP interface.
When ForceUPnP is set to true, the PortOverwrite parameter is ignored asthis operation relies the operating system UPnP interface.
If set to false, the operation will attempt to open a port by adding a “port
forward” entry to the router for both UDP and TCP protocol. When ForceUPnP is
set to false, the Protocol parameter is ignored.
PortOverwrite
If set to true and the router web interface already has an entry with the same
port as specified by Port, the operation will overwrite that entry with the new
one. If set to false, and the router already has an entry with the same port asspecified by Port, the operation returns with the corresponding error code (see
return value table). If no value is specified for this parameter, it is set to true.
This parameter is ignored when ForceUPnP is set to true.
Protocol
Specifies the protocol type of the port. 0 corresponds to UDP, 1 corresponds toTCP. When the ForceUPnP parameter is set to false, this parameter is
ignored. The default value is 1
Return Value
ReturnValue
Description
-5 Invalid access code
1 General Error
2 No available empty entries
3 Unable to connect to router
4 Unknown router or router not supported
int CRouterConfigure::OpenRouterPort(
int Port, bool ForceUPnP = true,
bool PortOverwrite = true,
int Protocol = 1
)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 34/61
©2006 zConf, LLC. All rights reserved.
34
5 Unknown firmware version
6 Login failure
7 Router submit error
8 Removing existing port failure
9 Add new port failure
10 Port taken failure
11 Manual “Port Forwarding” is not supported. Try using UPnP
12 Port overwrite required
15 Invalid Internal IP Address
16 Invalid Internal IP Address
17 Router credentials required or router not supported
18 Could not identify router
19 No credentials in registry or registry not accessible20 Router Identified however not supported
21 Time out occurred or operation terminated
22 Invalid Port number
23 Invalid Protocol
24 Invalid Internal IP Address
25 Invalid Default Gateway Address
80 Failed to open port using UPnP
100 Port was opened using UPnP
0 Port was opened manually
RemarksThis operation uses the following CRouterConfigure properties:Username, Password, RouterID, Internal_IP, DefaultGatewayAddress,
dwTimeOut, bTerminate and lpszFilename.
Before attempting to open a port, this operation verifies that the router it is connected toand the router credentials are what specified in _username, _password , and _routerID
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 35/61
©2006 zConf, LLC. All rights reserved.
35
SummaryThis operation attempts to close a port as specified by Port on the router by using the
UPnP interface or by removing all entries with the same port, as specified by Port, fromthe “port forwarding” web interface of the router.
ParametersPort
The port number to close
ForceUPnP
If set to true, the operation will attempt to close a port using the UPnP interface.
When ForceUPnP is set to true, the operation uses the operating system UPnPinterface.
If set to false, the operation will attempt to close a port by removing all entries
with the same port, as specified by Port, from the “port forward” web interface
of the router. When ForceUPnP is set to false, the Protocol parameter is
ignored.
Protocol Specifies the protocol type of the port. 0 corresponds to UDP, 1 corresponds toTCP. When the ForceUPnP parameter is set to false, this parameter isignored. The default value is 1
Return Value
ReturnValue
Description
-5 Invalid access code
1 General Error
3 Unable to connect to router
4 Unknown router or router not supported
5 Unknown firmware version
6 Login failure
7 Router submit error
8 Removing existing port failure
10 Port taken failure
11 Manually removing port is not supported. Try using UPnP
14 Port not found
17 Router credentials required or router not supported
int CRouterConfigure::CloseRouterPort(
int Port,
bool ForceUPnP,
int Protocol)
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 36/61
©2006 zConf, LLC. All rights reserved.
36
18 Could not identify router
20 Router Identified however not supported
21 Time out occurred or operation terminated
22 Invalid Port number
23 Invalid Protocol
25 Invalid Default Gateway Address
80 Failed to close port using UPnP
100 Port was closed using UPnP
0 Port was closed manually
RemarksThis operation uses the following CRouterConfigure properties:Username, Password, RouterID, DefaultGatewayAddress, dwTimeOut,
bTerminate and lpszFilename.
Before attempting to close a port, this operation verifies that the router it is connected toand the router credentials are what specified in _username, _password , and
_routerID.
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 37/61
©2006 zConf, LLC. All rights reserved.
37
Sam ple Code
The following sample codes use the CRouterConfigure, class in a client application called
TestApplication written with Microsoft Visual C++ .
The RouterConfig™ API package you received from zConf includes the following files:1. RouterConfig.h – The header file with exposed methods and constants
2. routerconfig.lib – The library file for your compiler
3. routerconfig.dll – The dynamic Linked Library file you must include with your client
application
The sample code below includes the routerconfig.lib file as an additional dependency
in the Linker input. This is defined at the project property pages:
Sample Code
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 38/61
©2006 zConf, LLC. All rights reserved.
38
/**************************************************
* TestApplication.cpp main implementation file *
* zConf LLC - All rights reserved *
***************************************************/
#include "RouterConfig.h" // Contains RouterConfig exposed methods, objects and constants
#include <iostream>
using namespace std;
void main()
{ char * filename = "C:\\Documents and Settings\\User1\\Desktop\\log_file.txt";
char * username = "admin";
char * password = "zconf";
char * defaultGatewayAddress = "192.168.0.1";
char * internalIP = NULL;
int port = 45;
bool * terminate = new bool; *terminate = false;
char * accessCode = "yourAcessCode";
int retValue = 0;
// CRouterConfigure object declaration
CRouterConfigure* pRouter = new CRouterConfigure(accessCode);
// Set CRouterConfigure object properties
pRouter->SetLogFile(filename);
pRouter->SetUsername(username);
pRouter->SetPassword(password);
pRouter->SetTimeout(60000);
pRouter->SetTerminate(terminate);
pRouter->SetDefaultGatewayAddress(defaultGatewayAddress);
pRouter->SetInternalIP(internalIP);
// Detect the router connected to the local machine using default credentials
retValue = pRouter->DetectRouter(true);
// If detection was not successful with default credentials, try again with non default credentials
if (retValue > 0)
retValue = pRouter->DetectRouter(false);
if (retValue > 0) {
// Wait for the router to be accessible
retValue = pRouter->WaitRouter();
cout<<"WaitRouter() returns " << retValue << endl;
// Open port 45 manually
retValue = pRouter->OpenRouterPort(port, false, true);
cout<<"OpenRouterPort mannully returns " << retValue << endl;
// Wait for the router to be accessible
retValue = pRouter->WaitRouter();
cout<<"WaitRouter() returns " << retValue << endl;
// Open TCP port 45 using the UPnP interface
retValue = pRouter->OpenRouterPort(port, true, true, 1);cout<<"OpenRouterPort mannully returns " << retValue << endl;
// Wait for the router to be accessible
retValue = pRouter->WaitRouter();
cout<<"WaitRouter() returns " << retValue << endl;
// Close port 45 mannually
retValue = pRouter->CloseRouterPort(port, false);
cout<<"CloseRouterPort(" << port <<") returns " << retValue << endl;
// Close TCP port 45 using UPnP interface
retValue = pRouter->CloseRouterPort(port, true, 1);
cout<<"CloseRouterPort(" << port <<") returns " << retValue << endl;
// Wait for the router to be accessible
retValue = pRouter->WaitRouter();
cout<<"WaitRouter() returns " << retValue << endl;
// Enable the UPnP feature on the router
retValue = pRouter->EnableRouterUPNP();
cout<<"EnableRouterUPNP() returns " << retValue << endl;
// Disable the UPnP feature on the routerretValue = pRouter->DisableRouterUPNP();
cout<<"DisableRouterUPNP() returns " << retValue << endl;
// Wait for the router to be accessible
retValue = pRouter->WaitRouter();
cout<<"WaitRouter() returns " << retValue << endl;
}
else
cout<<"Error: Could not detect router" << endl;
delete pRouter;
delete terminate;
return;
}
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 39/61
©2006 zConf, LLC. All rights reserved.
39
Appendices
Appendices
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 40/61
©2006 zConf, LLC. All rights reserved.
40
Appendix A – Router List
index Router model
93 2Wire 1701HG/1000HG/2700HG-B/2700HG-S163 2Wire 2700HG-D
29 2Wire 1800HG
124 2Wire HomePortal 100
126 2Wire HomePortal 1000S/1000SW
132 2Wire HomePortal 180SW/165
127 2Wire HomePortal 2701HG
32 3Com 3CR858-91
146 3Com 3CRTRV10075
109 Actiontec R1524SU
164 Actiontec M1424-WR
112 Actiontec GT704-WG99 AirLink+ AR315W
135 AirLink+ AR315W
159 AirLink+ AR325W
94 AirLink+ AR410W
95 AirLink+ AR525W
44 Belkin F5D5231-4
1 Belkin F5D6230-3/F5D5230-4
161 Belkin F5D6231-3
25 Belkin F5D7230-4
74 Belkin F5D7231-4
26 Belkin F5D8230-4
104 Belkin F5D8231-4 N1
139 Belkin F5D9230-4
106 Buffalo WBR2-G54S
11 Buffalo WZRG108
5 Buffalo WHRG54S
108 Baffalo WYR-G54
6 Buffalo WHRHPG54
167 CNet CWR-854/ CWR-854V
98 CompUSA SKU 313831
133 Dell WRTB-107GD340
131 DLink DGL4100
31 DLink DGL4300
129 DLink DGL4300/DGL4100
107 DLink DI514 Rev. E/DI774 Rev. A1
24 DLink DI524
169 DLink DI524 E1
71 DLink DI524
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 41/61
©2006 zConf, LLC. All rights reserved.
41
index Router model
39 DLink DI604
23 DLink DI624
72 DLink DI624
17 DLink DI624M
79 DLink DI624S
121 DLink DI704
35 DLink DI704P
36 DLink DI704UP
77 DLink DI707P
70 DLink DI714P
128 DLink DI724U
50 DLink DI714Pplus
49 DLink DI764
3 DLink DI784
40 DLink DI804HV
10 DLink DI808HV
12 DLink DI824VUP
84 DLink DILB604
145 DLink DIR-635
138 DLink DIR-655
53 DLink DSL G604T
38 DLink DVG1402S
87 DLink EBR-2310
141 DLink WBR-2310
86DLink WBR-1310
120 DLink DI634M
18 Dynex DX-E401
151 eHome EH100
42 Hawking H2BR4
41 Hawking HBR49
105 Hawking HWR54G Rev M
20 Linksys WRT54GP2
15 Linksys BEFSR11V2
16 Linksys BEFSR11V2
113 Linksys BEFSR11V2
62 Linksys BEFSR11V2/BEFSX4114 Linksys BEFSR11V2/BEFSX41
68 Linksys BEFSR41v2
61 Linksys BEFSR41v3
21 Linksys BEFSR41v4
46 Linksys BEFSR81v3 2
60 Linksys BEFSX41
58 Linksys BEFSX41
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 42/61
©2006 zConf, LLC. All rights reserved.
42
index Router model
33 Linksys BEFVP41
96 Linksys BEFW11S4v2
57 Linksys BEFW11S4v4
59 Linksys BEFW11S4v4
148 Linksys NR041
134 Linksys RT042
2 Linksys RT31P2
103 Linksys RV042
147 Linksys RVS4000
168 Linksys WRK54G
149 Linksys WRT150N/WRT350N
90 Linksys WRT300N
150 Linksys WRT330N
22 Linksys WRT54G/WRT54GSv4
7 Linksys WRT54GC
8 Linksys WRT54GC
83 Linksys WRT54GL
19 Linksys WRT54GS
116 Linksys WRT54GS
117 Linksys WRT54GS
88 Linksys WRT54GV5
69 Linksys WRT54GV5
82 Linksys WRT54GX
73 Linksys WRT54GX2
89Linksys WRT54GX4
85 Linksys WRT54GX4
156 Linksys WRT54GX4
55 Linksys WRT55AGv2
63 Linksys WRT55AGv2
144 Linksys WRTSL54GS
56 Linksys WRV54G
9 Linksys WTR54GS
114 Linksys WRT54G-JP
115 Linksys WRT54G-JP
137 Linksys WRTP54G
122 Linksys WRV200171 Linksys WRK54G v2
172 Linksys WCG200 v2
118 Microsoft MN500
110 Motorola WR850G
119 Motorola SBG900
130 Netgear DG834G v1/v2
155 Netgear DG834 v1/DG834G v2
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 43/61
©2006 zConf, LLC. All rights reserved.
43
index Router model
157 Netgear FR114P
37 Netgear FVS318
30 Netgear FWG114P
13 Netgear MR814V3
34 Netgear RP614 v3/v2
54 Netgear WGR101
153 Netgear WGR614v2/WGT624v2
102 Netgear WGR614v4
64 Netgear WGR614V5
100 Netgear WGR614V6
101 Netgear WGR614V6
165 Netgear WGR614V7
28 Netgear WGT624v3
75 Netgear WGU624
162 Netgear NR854T
4 Netgear WPN824
76 Netgear WPNT834
123 Netgear WNR834B
170 Netgear WGT634U
173 Netgear RP614 v4
174 Dlink DI-514vB1/DI-624vA
176 Zoom DSL X5v 5585
176 US Robotics USR8054
177 Zonet ZSR0104CR
65SMC BR14UP
81 SMC BR14VPN
66 SMC BR18VPN
48 SMC SMC7004VBR
47 SMC SMC7008ABRv1
67 SMC 2804WBRP
180 SMC SMC2404WBR
152 StarTech BR4100DC
78 TRENDnet TEW432BRP
141 TRENDNet/ Airnet TEW452BRP/ AWR014G8
91 TRENDNet TEW511BRP
92 TRENDNet TEW511BRP158 TRENDNet TEW631BRP
154 TRENDNet TPL-111BR
80 USR 5461
52 USR XX5462
166 Westell B90-327W15-06
97 Westell A90-210030-04
43 Zonet ZSR0104D
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 44/61
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 45/61
©2006 zConf, LLC. All rights reserved.
45
Appendix B – Firmware Versions
Support for UPnP Enabling / Disabling and manual Port Forwarding
Support for manual Port Forwarding only
Support for UPnP Enabling / Disabling only
Mfg Firmware H/W version
1.42.2
1.42.32.00.8
2.02.2
2.02.7
2.02.8 beta
2.04.3
2.04.4
3.01.3
3.03.1
3.03.6
4.00.7
4.20.64.20.7
4.21.1
4.30.2
4.30.05
v1.x, v2.x, v3.x, v4.x
1.00.0
1.00.1
1.00.2
1.00.3
1.00.4
1.00.6
1.00.9
1.01.0
1.01.1
1.02.0
1.02.2
v5, v6
Linksys WRT54G
8.00.0 V8
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 46/61
©2006 zConf, LLC. All rights reserved.
46
2.53
2.70
2.71
2.75
D-Link DI-624
2.76
Rev C
2.00 V2
2.16 V2
5.0.07 V4
1.03 V5
1.07 V5, V6
1.09 V5, V6
1.0.11 V6
2.0.13 V6
2.0.14 V6
2.0.19 V6
1.0.12 V7
1.0.14 V7
Netgear WGR614
2.0.20 V7
1.00.06Belkin F5D8230-4
1.01.03V4
3.17.4
3.37.1
3.37.2
3.37.6
4.50.64.71.1
V1.x, V2
1.05.0 V4
1.50.5
1.50.6
1.50.9
1.51.0
1.52.0
1.52.2
V5, V6
Linksys WRT54GS
7.50.0 V7
4.03.034.05.03
8.01.07
8.01.21
4.03.03
4.05.03V1000
5.00.02
Belkin F5D7230-4
5.00.04V3000
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 47/61
©2006 zConf, LLC. All rights reserved.
47
1.03
1.05
1.11
Rev A
1.233.01
3.023.203.23
Rev C
4.00
D-Link DI-524
4.03Rev D
D-Link DVG-1402S
1.40
1.43
1.44D-Link DI-804HV
1.45
1.03.00
1.04.01
1.05.00
2.10.22
3.01.25
3.01.31
3.01.32
V2
1.03.00.
1.04.011.05.00.
2.10.22
Netgear DG834G
3.01.25
V1
5.135.20
V2Netgear RP614
6.0 V3
1.23
1.23.4
1.30
1.33
1.33.1
1.34
1.351.36
1.37
1.38.5
1.39
1.40.1
1.40.2
Linksys BEFSR41
1.42.3
V1, v2
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 48/61
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 49/61
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 50/61
©2006 zConf, LLC. All rights reserved.
50
1.42.7
1.43
1.45
1.45.10
1.45.3
1.45.71.50
1.50.10
1.50.14
1.52.02
V4
1.23
1.31D-Link DI-714P+
1.33
Ver. B1
1.02
2.10D-Link DI-7642.15
SMC 7008ABRv1 1.036
SMC 7004VBR 1.00
1.28Linksys RT31P2
1.30.00
V1.0.1.4
V1.0.2.4V1.0.3.5
V1.0.3.8
Netgear WNR834B
V1.0.4.0 V1
2.0DLink DI634M
2.1
1.0.
1.2
1.31.4
1.5
1.6
Dlink DGL4300
1.7
1.34Linksys BEFSR11
1.35
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 51/61
©2006 zConf, LLC. All rights reserved.
51
1.36
1.37
1.38.5
1.39
1.40.1
1.40.2
1.42.3
1.42.6
1.42.7
1.43
1.43.3
1.43.3Z
1.44
1.44Z
1.44.2
1.44.2Z
1.45.3
1.45.61.45.7
1.45.11
1.46
1.46.2
V2
1.0
1.2
2.1D-Link DI-624M
2.5
A1
Netgear MR814 5.4.06 V3
V1.01.003Belkin F5D6230-3
1.20.004
1.39
1.40
1.41
1.43
D-Link DI-808HV
1.44
Linksys WTR54GS 1.0_15
1.01
1.03D-Link DI-824VUP
1.05
Buffalo WHR-HP-G54 1.2
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 52/61
©2006 zConf, LLC. All rights reserved.
52
1.23
1.38
1.4
1.2
1.231.38
Buffalo WHR-G54S
1.4
Buffalo WZR-G108 default
2.36
2.37
2.38
2.4
D-Link DI-784
2.42
1.0.10
2.0.11
2.0.15_1.0.11Netgear WPN824
2.0.120
V1
1.02.5
1.02.8
1.03.0Linksys WRT54GC
1.05.7
2.03
2.10
2.21
2.25.2
2.36
2.37
2.39
Linksys WRV54G
2.39.2
1.10
1.40
1.67Linksys WRT55AG
1.79
V2
SMC BR14UP default
1.00SMC BR18VPN
1.03
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 53/61
©2006 zConf, LLC. All rights reserved.
53
1.04
1.954
2.00SMC 2804WBRP-G
2.08
3.00D-Link DI-707P
3.06 Rev C
Belkin F5D7231-4 4.07.07 V1
D-Link DI-624S default
1.0.0TRENDnet TEW-
432BRP 1.2.0
1.01.06
1.01.14
1.01.18Linksys WRT54GX2
1.01.22
1.0.1.7
1.0.1.9
1.0.1.10
1.0.1.11
Netgear WGU624
2.0.1.1
1.0_24
1.0.41Netgear WPNT834
1.0.51
3.91.37.0.3
3.93.35.0.6USRobotics USR 5461
3.93.35.0.8
1.01.04
1.01.051.01.07
1.02.06
1.02.10
1.02.14
Linksys WRT54GX
1.02.15
Linksys WRT54GL 4.30.0
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 54/61
©2006 zConf, LLC. All rights reserved.
54
4.30.2
4.30.5
4.30.9
1.00D-Link DI-LB604
1.01
1.00.09
1.00.10
1.00.17
1.00.19
Linksys WRT54GX4
1.00.20
1.00
1.01
1.04b14D-Link EBR-2310
1.05
A1
1.00
1.01
1.03
1.04Rev. A1
2.00
D-Link WBR-1310
2.01Rev. B1
0.92.5
0.93.3
0.93.9v1.03.3
v1.03.6
Linksys WRT300N
v1.51.2
V1
1.15TRENDnet TEW-511BRP 1.19
2Wire 1701HG 3.17.5
1.6.5AirLink AR410W
1.6.6
Westell A90-210030-04 1.05.33
CompUSA SKU 313831 2.07.0002
1.00 R21AirLink AR315W
1.00 R23
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 55/61
©2006 zConf, LLC. All rights reserved.
55
1.1 R22
1.0.22
1.0.38AirLink AR525W
1.0.50
1.01.15
1.01.23Belkin F5D8231-4 N1
1.01.45
1.3.1
1.3.6.4
1.3.7.4
1.3.7.10
1.3.8.2
Linksys RV042
1.3.9
Buffalo WBR2-G54S 2.30
2.00DLink DI-514 Rev.E
2.04
1.0 Release 11Hawking HWR54G R. M
1.1 Release 2c
1.0 Release 31Buffalo WYR-G54
1.1 Release 24
Actiontec R1524SU 1.60.10.0.71
4.03Motorola WR850G
6.1.4
Hawking HBR49 1.04.004.2065
Actiontec GT704-WG 3.0.1.0.6.0
2.50.22.51.1Linksys BEFSR81
2.51.3
V3.x
Microsoft MN500 default
Dlink DSL G604T default
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 56/61
©2006 zConf, LLC. All rights reserved.
56
1.0.12
1.0.21
1.0.24
1.0.32.2
Linksys WRV200
1.0.29
2.5
2.52b6
2.53b6
2.55b12
2.55b15
2.56b20
D-Link DI-704
2.57b3
Motorola SBG900 default
V4.1.11_1.0.1
V4.2.4_1.0.1
V4.2.6_1.0.1
V4.2.8_1.0.1
V4.2.10_1.0.1
V4.2.11_1.0.1
V2
1.0.12
1.0.120.
1.0.128
2.0.10.
2.0.13
2.0.162.0.17
2.0.21
Netgear WGT624
2.0.25
V3
1.0.
1.2
1.3
1.4
1.5
1.6
Dlink DGL4300
1.7
2.0.Dlink DI634M
2.1
1.0.Dlink DI724U
1.1
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 57/61
©2006 zConf, LLC. All rights reserved.
57
1.2
2Wire HomePortal 100 2.2.3.0
2Wire HomePortal
1000S
3.5.0
2Wire HomePortal2701HG
5.29.47
1.2
1.3
1.4
1.5
1.6
1.7
Dlink DGL4100
1.8
1.2
1.26
1.28Hawking H2BR4
1.32
2Wire HomePortal180SW
3.5.1
2Wire HomePortal 165 3.5.5
2Wire HomePortal1000HG
3.7.5
DYNEX DX-E401
V1.00.014USRobotics XX5462
V1.00.015
Dell WRTB-107GD340 5.1.1.6
Linksys RT042 1.3.5
1.00.48Linksys WRTP54G
1.00.62
1.02
1.03
1.04DLink DIR-655
1.05
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 58/61
©2006 zConf, LLC. All rights reserved.
58
3.01.53
3.01.63
3.02.76Belkin F5D9230-4
3.02.78
1.2
1.3
1.4ZyXEL X-550
1.6
1.02
1.03DLink WBR-2310
1.04
1.5
1.61.7
ZyXEL P-330W
1.8
V2.00.1
V2.00.5Linksys WRTSL54GS
V2.06.0
1.04
1.05
1.06
1.07
1.08
Dlink DIR635
1.09
1.0.263Com 3CRTRV10075
1.0.27
V1.0.11
V1.1.09Linksys RVS4000
V1.1.11
Linksys NR041 1.2.06
V1.00.5
V1.01.2Linksys WRT150N
V1.01.9
Linksys WRT330N v1.00.1
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 59/61
©2006 zConf, LLC. All rights reserved.
59
v1.00.3
eHome EH100 1.00
2.97StarTech BR4100DC
3.15
TRENDnet TPL-111BR 1.4.2
1.03.00.
1.04.01
1.05.00.
2.10.22
Netgear DG834 v1
3.01.25
Linksys WRT350N v1.03.2
TRENDnet TEW-452BRP
1.6.6
1.0.2.3
1.0.3.1TRENDnet TEW-
631BRP1.0.3.2
V1.0R
R1.97e5cAirLink AR325W
R1.97g3
Belkin F5D5230-4 V1.20.000
DLink DI-774 1.25 Rev. A1
Belkin F5D6231-4 2.00.002
1.4.23
1.4.22
1.4.16
1.4.19
1.4.09
1.4.07
1.3.33
1.3.04
1.1.26
1.1.15
Netgear WNR854T
1.1.05
2Wire 2700HG-B 4.25.19
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 60/61
©2006 zConf, LLC. All rights reserved.
60
1.3.16
1.4.26
1.5_09
1.5_13
Netgear FR114P
1.5_14
Actiontec M1424-WR 4.0.16.1.45.160
Westell B90-327W15-06 03.02.01
2Wire 2700HG-S 4.25.21
1.3.0.3
1.2.3.3CNet CWR-854
1.4.0.3
2Wire 1000SW 3.5.1
Linksys WRK54G 1.58.03
2Wire 2700HG-D 4.25.19
5.00
5.10Dlink DI-524
5.11
E1
1.4.1.13
1.4.1.10
1.4.1.9
1.4.0.6
Netgear WGT634U
1.3.0.6
Linksys WRT54GS 1.05.0 V4
Linksys WRK54G v2 1.00.1
V4.2.8_1.0.1
V4.2.11_1.0.1
4.0.4
V4.1.11_1.0.1
V4.2.4_1.0.1
V4.2.6_1.0.1
Netgear WGT624
V4.2.10_1.0.1
V1
8/8/2019 Router Config API Ver 2 0 6
http://slidepdf.com/reader/full/router-config-api-ver-2-0-6 61/61
V1.0.1_11.29
V1.0.2_06.29Netgear RP614 v4
V0.1.8_03.17
Linksys WCG200 v2 2.0.3.5.10-0425
Dlink DI-514 1.00 B1
Dlink DI-624 1.25 A
2.5.1Zoom DSL X5v 5585
2.5.3
1.64
1.21US Robotics USR8054
1.67
Zonet ZSR0104CR 2.3.4
Airnet AWR014G8 1.6.6
1.0.10SMC 2404WBR
1.0.12
CNet CWR-854V 1.3.0.3A