<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
- (c) 2006 U.S. Robotics Corporation
+ (c) 2005-2006 U.S. Robotics Corporation
-->
<html>
<head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <meta http-equiv="Pragma" content="no-cache">
- <title>Internet » VPN IPSec Settings</title>
- <link href="usr_menus.css" rel="stylesheet" type="text/css">
- <script src="usr_menus.js" type="text/javascript"></script>
- <script src="usr_menus_build.js" type="text/javascript"></script>
- <link href="usr_main.css" rel="stylesheet" type="text/css">
- <script src="usr_common.js" type="text/javascript"></script>
- <script type="text/javascript" src="util.js"></script>
- <script type="text/javascript">
-
-<!-- hide
+ <title>VPN IPSec Settings « Internet</title>
+ <link href="usr_layout.css" type="text/css" rel="stylesheet" />
+ <script src="usr_layout.js" type="text/javascript"></script>
+
+ <link href="usr_device.css" type="text/css" rel="stylesheet" />
+ <script src="usr_device.js" type="text/javascript"></script>
+
+ <link href="usr_menus_dropdown.css" rel="stylesheet" type="text/css">
+ <script src="usr_menus_dropdown.js" type="text/javascript"></script>
+ <script src="usr_menus_build.js" type="text/javascript"></script>
+
+ <link href="usr_91xx.css" type="text/css" rel="stylesheet" />
+ <script src="usr_91xx.js" type="text/javascript"></script>
+ <script src="usr_resources.js" type="text/javascript"></script>
+ <script type="text/javascript" src="util.js"></script>
+
+ <meta http-equiv="Pragma" content="no-cache">
+
+<script type="text/javascript">
var ipsTableIndex = '<%ejGetJS(ipsTableIndex)%>';
var ipsConnName = '<%ejGetJS(ipsConnName)%>';
var ipsLocalMask = '<%ejGetJS(ipsLocalMask)%>';
var ipsLocalRangeLo = '<%ejGetJS(ipsLocalRangeLo)%>';
var ipsLocalRangeHi = '<%ejGetJS(ipsLocalRangeHi)%>';
+var ipsLocalMac = "<%ejGetJS(ipsLocalMac)%>";
var ipsRemoteIPMode = '<%ejGetJS(ipsRemoteIPMode)%>';
var ipsRemoteIP = '<%ejGetJS(ipsRemoteIP)%>';
var ipsRemoteMask = '<%ejGetJS(ipsRemoteMask)%>';
var mode = localIPMode[localIPMode.selectedIndex].value;
switch ( mode ) {
case "subnet":
- showhide("IP11", 1);
- showhide("IP12", 1);
+ setVisibility("IP11", true);
+ setVisibility("IP12", true);
+ setVisibility("IP13", false);
+ localIP.value = ipsLocalIP;
+ setVisibility("noteIP", false);
break;
case "single":
- showhide("IP11", 1);
- showhide("IP12", 0);
+ setVisibility("IP11", true);
+ setVisibility("IP12", false);
+ setVisibility("IP13", true);
+ if (localIP.value == "0.0.0.0" ) {
+ localIP.value = "<%ejGetOther(memInfo,localHostIP)%>";
+ setVisibility("noteIP", true);
+ }
break;
default:
}
var mode = remoteIPMode[remoteIPMode.selectedIndex].value;
switch ( mode ) {
case "subnet":
- showhide("IP21", 1);
- showhide("IP22", 1);
+ setVisibility("IP21", true);
+ setVisibility("IP22", true);
break;
case "single":
- showhide("IP21", 1);
- showhide("IP22", 0);
+ setVisibility("IP21", true);
+ setVisibility("IP22", false);
break;
default:
}
var authmode = authM[authM.selectedIndex].value;
switch (keymode) {
case "auto":
- showhide("AutoKeyEx", 1);
- showhide("ManualKey", 0);
+ setVisibility("AutoKeyEx", true);
+ setVisibility("ManualKey", false);
switch (authmode) {
case "pre_shared_key":
- showhide("PSK", 1);
- showhide("Certificate", 0);
+ setVisibility("PSK", true);
+ setVisibility("Certificate", false);
break;
case "certificate":
- showhide("PSK", 0);
- showhide("Certificate", 1);
+ setVisibility("PSK", false);
+ setVisibility("Certificate", true);
break;
default:
}
break;
case "manual":
- showhide("AutoKeyEx", 0);
- showhide("ManualKey", 1);
- showhide("PSK", 0);
- showhide("Certificate", 0);
+ setVisibility("AutoKeyEx", false);
+ setVisibility("ManualKey", true);
+ setVisibility("PSK", false);
+ setVisibility("Certificate", false);
showAdv = false;
showhideAdv(showAdv);
break;
{
with (document.forms[0])
{
- showhide("adv", show);
+ setVisibility("adv", show);
if (show)
advSWButton.value = "Hide Advanced IKE Settings";
else
setSelect(localIPMode, ipsLocalIPMode);
localIP.value = ipsLocalIP;
localMask.value = ipsLocalMask;
+ localMac.value = ipsLocalMac;
setSelect(remoteIPMode, ipsRemoteIPMode);
remoteIP.value = ipsRemoteIP;
remoteMask.value = ipsRemoteMask;
setSelect(authM, ipsAuthM);
psk.value = ipsPSK;
setSelect(certificateName, ipsCertificateName);
- perfectFSEn.value = ipsPerfectFSEn;
+ perfectFSEn.checked = (ipsPerfectFSEn == "enable");
setSelect(manualEncryptionAlgo, ipsManualEncryptionAlgo);
manualEncryptionKey.value = ipsManualEncryptionKey;
- setSelect(manualAuthAlgo, ipsManualAuthAlgo)
+ setSelect(manualAuthAlgo, ipsManualAuthAlgo);
manualAuthKey.value = ipsManualAuthKey;
spi.value = ipsSPI;
setSelect(ph1Mode, ipsPh1Mode);
alert('Local Subnet Mask "' + localMask.value + '" is invalid.');
return;
}
+ if ( getSelect(localIPMode) == "single" && isValidMacAddress(localMac.value) == false ) {
+ alert('Local MAC address "' + localMac.value + '" is invalid.');
+ return;
+ }
if ( isValidIpAddress(remoteIP.value) == false ) {
alert('Remote IP Address "' + remoteIP.value + '" is invalid.');
return;
loc += submitSelect(localIPMode, 'ipsLocalIPMode');
loc += submitText(localIP, 'ipsLocalIP');
loc += submitText(localMask, 'ipsLocalMask');
+ loc += submitText(localMac, 'ipsLocalMac');
loc += submitSelect(remoteIPMode, 'ipsRemoteIPMode');
loc += submitText(remoteIP, 'ipsRemoteIP');
loc += submitText(remoteMask, 'ipsRemoteMask');
loc += submitSelect(authM, 'ipsAuthM');
loc += submitText(psk, 'ipsPSK');
loc += submitSelect(certificateName, 'ipsCertificateName');
- loc += submitSelect(perfectFSEn, 'ipsPerfectFSEn');
+
+ var val = perfectFSEn.checked ? "enable":"disable";
+ loc += '&ipsPerfectFSEn=' + (perfectFSEn.checked ?
+ "enable":"disable");
+
loc += submitSelect(manualEncryptionAlgo, 'ipsManualEncryptionAlgo');
loc += submitText(manualEncryptionKey, 'ipsManualEncryptionKey');
loc += submitSelect(manualAuthAlgo, 'ipsManualAuthAlgo');
loc += submitText(ph2KeyTime, 'ipsPh2KeyTime');
}
- var code = 'location = "' + loc + '"';
- eval(code);
+
+ location = loc;
+// var code = 'location = "' + loc + '"';
+// eval(code);
}
-// done hiding -->
</script>
-
</head>
<body onload="initMenu(); formLoad();">
<script type="text/javascript">
- setPageTitle("<%ejGetWlJS(wlInterface)%>");
writeHeader("Internet");
</script>
</tr>
</table>
-<p><label>Tunnel access from local IP addresses:</label>
+<p><label>Allow tunnel access from these local IP addresses:</label>
<select name="localIPMode" onchange="localIPModeChange();">
<option value="subnet">Subnet</option>
<option value="single">Single address</option>
<td><label for="localMask"> IP subnet mask:</label></td>
<td><input name="localMask" type="text"></td>
</tr>
+
+ <tr id="IP13">
+ <td><label for="localMac"> MAC address for VPN:</label></td>
+ <td><input name="localMac" type="text"></td>
+ </tr>\r
+ <tr id="noteIP"> <td></td>\r
+ <td>\r
+ <span class="clsNote">(Note: To give VPN access to another device, override the current client addresses.)\r
+ </span>\r
+ </td>\r
+ </tr>
</table>
-<p><label>Tunnel access from remote IP addresses:</label>
+<p><label>Allow tunnel access from these remote IP addresses:</label>
<select name="remoteIPMode" onchange="remoteIPModeChange();">
<option value="subnet" selected>Subnet</option>
<option value="single">Single Address</option>
</p>
<table border="0">
<tr id="IP21">
- <td><label for="remoteIP"> IP Address for VPN:</label></td>
+ <td><label for="remoteIP"> IP address for VPN:</label></td>
<td><input name="remoteIP" type="text"></td>
</tr>
<td><label>Certificates:</label></td>
<td><select name="certificateName" /></td>
</tr>
-
- <tr>
- <td><label>Perfect forward secrecy:</label></td>
- <td>
- <select name="perfectFSEn">
- <option value="enable">Enable</option>
- <option value="disable">Disable</option>
- </select>
- </td>
- </tr>
</table>
<p><input name="advSWButton" type="button" value="Show Advanced IKE Settings" onclick="switchAdv();"></p>
<td><label>Encryption algorithm:</label></td>
<td>
<select name="ph1EncryptionAlgo">
- <option value="des">DES-CBC</option>
<option value="3des" selected>3DES-CBC</option>
<option value="aes128">AES-128-CBC</option>
<option value="aes192">AES-192-CBC</option>
<tr>
<td colspan="2"><h4>Phase 2</h4></td>
</tr>
+ <tr>\r
+ <td colspan="2"><input type='checkbox' name='perfectFSEn' id='perfectFSEn' value="ON"> \r
+ <label for="perfectFSEn">Allow perfect forward secrecy (PFS)</label></td>\r
+ </tr>\r
<tr>
<td><label>Encryption algorithm:</label></td>
<td>