1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-12-26 01:59:53 +03:00

Merge PR #1157: Cedar: remove "NicDownOnDisconnect" option, force correct behavior

This commit is contained in:
Davide Beatrici 2020-06-28 14:45:13 +02:00 committed by GitHub
commit 275e8a81ef
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 16 additions and 289 deletions

View File

@ -3660,7 +3660,6 @@ void InRpcClientConfig(CLIENT_CONFIG *c, PACK *p)
c->KeepConnectProtocol = PackGetInt(p, "KeepConnectProtocol");
c->KeepConnectInterval = PackGetInt(p, "KeepConnectInterval");
c->AllowRemoteConfig = PackGetInt(p, "AllowRemoteConfig") == 0 ? false : true;
c->NicDownOnDisconnect = PackGetBool(p, "NicDownOnDisconnect");
PackGetStr(p, "KeepConnectHost", c->KeepConnectHost, sizeof(c->KeepConnectHost));
}
void OutRpcClientConfig(PACK *p, CLIENT_CONFIG *c)
@ -3676,7 +3675,6 @@ void OutRpcClientConfig(PACK *p, CLIENT_CONFIG *c)
PackAddInt(p, "KeepConnectProtocol", c->KeepConnectProtocol);
PackAddInt(p, "KeepConnectInterval", c->KeepConnectInterval);
PackAddInt(p, "AllowRemoteConfig", c->AllowRemoteConfig);
PackAddBool(p, "NicDownOnDisconnect", c->NicDownOnDisconnect);
PackAddStr(p, "KeepConnectHost", c->KeepConnectHost);
}
@ -6445,7 +6443,7 @@ bool CtConnect(CLIENT *c, RPC_CLIENT_CONNECT *connect)
CLog(c, "LC_CONNECT", connect->AccountName);
r->ClientSession = NewClientSessionEx(c->Cedar, r->ClientOption, r->ClientAuth, pa, r, &c->Config.NicDownOnDisconnect);
r->ClientSession = NewClientSessionEx(c->Cedar, r->ClientOption, r->ClientAuth, pa, r);
Notify(r->ClientSession, CLIENT_NOTIFY_ACCOUNT_CHANGED);
ret = true;
@ -6762,14 +6760,9 @@ bool CtSetClientConfig(CLIENT *c, CLIENT_CONFIG *o)
// Apply TAP state
LockList(c->AccountList);
LockList(c->UnixVLanList);
if (o->NicDownOnDisconnect)
{
CtVLansDown(c);
}
else
{
CtVLansUp(c);
}
CtVLansDown(c);
UnlockList(c->UnixVLanList);
UnlockList(c->AccountList);
@ -8183,7 +8176,7 @@ bool CtCreateVLan(CLIENT *c, RPC_CLIENT_CREATE_VLAN *create)
StrCpy(r->Name, sizeof(r->Name), create->DeviceName);
// Create a TUN
if (UnixVLanCreate(r->Name, r->MacAddress, !c->Config.NicDownOnDisconnect) == false)
if (UnixVLanCreate(r->Name, r->MacAddress, false) == false)
{
// Failure
Free(r);
@ -9236,7 +9229,6 @@ void CiLoadClientConfig(CLIENT_CONFIG *c, FOLDER *f)
c->AllowRemoteConfig = CfgGetBool(f, "AllowRemoteConfig");
c->KeepConnectInterval = MAKESURE(CfgGetInt(f, "KeepConnectInterval"), KEEP_INTERVAL_MIN, KEEP_INTERVAL_MAX);
c->NoChangeWcmNetworkSettingOnWindows8 = CfgGetBool(f, "NoChangeWcmNetworkSettingOnWindows8");
c->NicDownOnDisconnect = CfgGetBool(f, "NicDownOnDisconnect");
}
// Read the client authentication data
@ -9566,7 +9558,7 @@ void CiLoadVLan(CLIENT *c, FOLDER *f)
Add(c->UnixVLanList, v);
#ifdef OS_UNIX
UnixVLanCreate(v->Name, v->MacAddress, !c->Config.NicDownOnDisconnect);
UnixVLanCreate(v->Name, v->MacAddress, false);
#endif // OS_UNIX
}
@ -9682,7 +9674,7 @@ bool CiReadSettingFromCfg(CLIENT *c, FOLDER *root)
UNIX_VLAN *uv;
// Create a Tap for MacOS X
if (UnixVLanCreate(CLIENT_MACOS_TAP_NAME, NULL, !c->Config.NicDownOnDisconnect) == false)
if (UnixVLanCreate(CLIENT_MACOS_TAP_NAME, NULL, false) == false)
{
// Fail (abort)
CLog(c, "LC_TAP_NOT_FOUND");
@ -9792,7 +9784,6 @@ void CiWriteClientConfig(FOLDER *cc, CLIENT_CONFIG *config)
CfgAddBool(cc, "AllowRemoteConfig", config->AllowRemoteConfig);
CfgAddInt(cc, "KeepConnectInterval", config->KeepConnectInterval);
CfgAddBool(cc, "NoChangeWcmNetworkSettingOnWindows8", config->NoChangeWcmNetworkSettingOnWindows8);
CfgAddBool(cc, "NicDownOnDisconnect", config->NicDownOnDisconnect);
}
// Write the client authentication data

View File

@ -90,7 +90,6 @@ struct CLIENT_CONFIG
UINT KeepConnectProtocol; // Protocol
UINT KeepConnectInterval; // Interval
bool NoChangeWcmNetworkSettingOnWindows8; // Don't change the WCM network settings on Windows 8
bool NicDownOnDisconnect; // Put NIC down on disconnect/connection loss and put it up again after connecting to VPN server
};
// Version acquisition

View File

@ -2978,9 +2978,6 @@ void PcMain(PC *pc)
{"AccountImport", PcAccountImport},
{"RemoteEnable", PcRemoteEnable},
{"RemoteDisable", PcRemoteDisable},
{"TUNDownOnDisconnectEnable", PcTunDownOnDisconnectEnable},
{"TUNDownOnDisconnectDisable", PcTunDownOnDisconnectDisable},
{"TUNDownOnDisconnectGet", PcTunDownOnDisconnectGet},
{"KeepEnable", PcKeepEnable},
{"KeepDisable", PcKeepDisable},
{"KeepSet", PcKeepSet},
@ -6947,135 +6944,6 @@ UINT PcRemoteDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param)
return ret;
}
// Enable turning TUN interface up/down on client connect/disconnect
UINT PcTunDownOnDisconnectEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param)
{
LIST *o;
PC *pc = (PC *)param;
UINT ret = ERR_NO_ERROR;
CLIENT_CONFIG t;
// Get the parameter list
o = ParseCommandList(c, cmd_name, str, NULL, 0);
if (o == NULL)
{
return ERR_INVALID_PARAMETER;
}
// RPC call
Zero(&t, sizeof(t));
ret = CcGetClientConfig(pc->RemoteClient, &t);
if (ret == ERR_NO_ERROR)
{
// Change the settings
t.NicDownOnDisconnect = true;
ret = CcSetClientConfig(pc->RemoteClient, &t);
}
if (ret == ERR_NO_ERROR)
{
// Success
}
if (ret != ERR_NO_ERROR)
{
// Error has occurred
CmdPrintError(c, ret);
}
// Release of the parameter list
FreeParamValueList(o);
return ret;
}
// Disable turning TUN interface up/down on client connect/disconnect
UINT PcTunDownOnDisconnectDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param)
{
LIST *o;
PC *pc = (PC *)param;
UINT ret = ERR_NO_ERROR;
CLIENT_CONFIG t;
// Get the parameter list
o = ParseCommandList(c, cmd_name, str, NULL, 0);
if (o == NULL)
{
return ERR_INVALID_PARAMETER;
}
// RPC call
Zero(&t, sizeof(t));
ret = CcGetClientConfig(pc->RemoteClient, &t);
if (ret == ERR_NO_ERROR)
{
// Change the settings
t.NicDownOnDisconnect = false;
ret = CcSetClientConfig(pc->RemoteClient, &t);
}
if (ret == ERR_NO_ERROR)
{
// Success
}
if (ret != ERR_NO_ERROR)
{
// Error has occurred
CmdPrintError(c, ret);
}
// Release of the parameter list
FreeParamValueList(o);
return ret;
}
// Get status of turning TUN interface up/down on client connect/disconnect
UINT PcTunDownOnDisconnectGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param)
{
LIST *o;
PC *pc = (PC *)param;
UINT ret = ERR_NO_ERROR;
CLIENT_CONFIG t;
o = ParseCommandList(c, cmd_name, str, NULL, 0);
if (o == NULL)
{
return ERR_INVALID_PARAMETER;
}
// RPC call
Zero(&t, sizeof(t));
ret = CcGetClientConfig(pc->RemoteClient, &t);
if (ret == ERR_NO_ERROR)
{
CT *ct = CtNewStandard();
CtInsert(ct, _UU("CMD_TUNDownOnDisconnectGet_COLUMN1"),
t.NicDownOnDisconnect ? _UU("SM_ACCESS_ENABLE") : _UU("SM_ACCESS_DISABLE"));
CtFree(ct, c);
}
if (ret != ERR_NO_ERROR)
{
// Error has occurred
CmdPrintError(c, ret);
}
// Release of the parameter list
FreeParamValueList(o);
return ret;
}
// Enable the maintenance function of the Internet connection
UINT PcKeepEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param)
{

View File

@ -377,9 +377,6 @@ UINT PcAccountExport(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcAccountImport(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcRemoteEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcRemoteDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcTunDownOnDisconnectEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcTunDownOnDisconnectDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcTunDownOnDisconnectGet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcKeepEnable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcKeepDisable(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
UINT PcKeepSet(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);

View File

@ -506,7 +506,7 @@ void StartLink(LINK *k)
pa->Param = (void *)k;
LockLink(k);
{
k->ClientSession = NewClientSession(k->Cedar, k->Option, k->Auth, pa, NULL);
k->ClientSession = NewClientSession(k->Cedar, k->Option, k->Auth, pa);
}
UnlockLink(k);
}

View File

@ -5008,15 +5008,9 @@ REDIRECTED:
}
PrintStatus(sess, _UU("STATUS_9"));
#ifdef OS_UNIX
// Set TUN up if session has NicDownOnDisconnect set
if (c->Session->NicDownOnDisconnect != NULL)
{
UnixVLanSetState(c->Session->ClientOption->DeviceName, true);
}
UnixVLanSetState(c->Session->ClientOption->DeviceName, true);
#endif
// Shift the connection to the tunneling mode
StartTunnelingMode(c);
s = NULL;

View File

@ -1266,14 +1266,9 @@ void CleanupSession(SESSION *s)
{
FreePacketAdapter(s->PacketAdapter);
}
#ifdef OS_UNIX
if (s->NicDownOnDisconnect != NULL && *s->NicDownOnDisconnect)
{
UnixVLanSetState(s->ClientOption->DeviceName, false);
}
UnixVLanSetState(s->ClientOption->DeviceName, false);
#endif
if (s->OldTraffic != NULL)
{
FreeTraffic(s->OldTraffic);
@ -1423,14 +1418,9 @@ void ClientThread(THREAD *t, void *param)
CLog(s->Cedar->Client, "LC_CONNECT_ERROR", s->ClientOption->AccountName,
GetUniErrorStr(s->Err), s->Err);
#ifdef OS_UNIX
if (s->NicDownOnDisconnect != NULL && *s->NicDownOnDisconnect)
{
UnixVLanSetState(s->ClientOption->DeviceName, false);
}
UnixVLanSetState(s->ClientOption->DeviceName, false);
#endif
if (s->LinkModeClient && s->Link != NULL)
{
HLog(s->Link->Hub, "LH_CONNECT_ERROR", s->ClientOption->AccountName,
@ -1838,7 +1828,7 @@ SESSION *NewRpcSessionEx2(CEDAR *cedar, CLIENT_OPTION *option, UINT *err, char *
}
// Create a client session
SESSION *NewClientSessionEx(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa, ACCOUNT *account, bool *NicDownOnDisconnect)
SESSION *NewClientSessionEx(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa, ACCOUNT *account)
{
SESSION *s;
THREAD *t;
@ -1966,8 +1956,6 @@ SESSION *NewClientSessionEx(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *au
s->ClientOption->NumRetry = 0;
}
s->NicDownOnDisconnect = NicDownOnDisconnect;
// Create a client thread
t = NewThread(ClientThread, (void *)s);
WaitThreadInit(t);
@ -1975,9 +1963,9 @@ SESSION *NewClientSessionEx(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *au
return s;
}
SESSION *NewClientSession(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa, bool *NicDownOnDisconnect)
SESSION *NewClientSession(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa)
{
return NewClientSessionEx(cedar, option, auth, pa, NULL, NicDownOnDisconnect);
return NewClientSessionEx(cedar, option, auth, pa, NULL);
}
// Get the session from the session key

View File

@ -226,8 +226,6 @@ struct SESSION
UINT64 LastDLinkSTPPacketSendTick; // Last D-Link STP packet transmission time
UCHAR LastDLinkSTPPacketDataHash[MD5_SIZE]; // Last D-Link STP packet hash
bool *NicDownOnDisconnect; // Pointer to client configuration parameter. NULL for non-clients.
SHARED_BUFFER *IpcSessionSharedBuffer; // A shared buffer between IPC and Session
IPC_SESSION_SHARED_BUFFER_DATA *IpcSessionShared; // Shared data between IPC and Session
};
@ -305,8 +303,8 @@ struct UI_CHECKCERT
// Function prototype
SESSION *NewClientSessionEx(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa, struct ACCOUNT *account, bool *NicDownOnDisconnect);
SESSION *NewClientSession(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa, bool *NicDownOnDisconnect);
SESSION *NewClientSessionEx(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa, struct ACCOUNT *account);
SESSION *NewClientSession(CEDAR *cedar, CLIENT_OPTION *option, CLIENT_AUTH *auth, PACKET_ADAPTER *pa);
SESSION *NewRpcSession(CEDAR *cedar, CLIENT_OPTION *option);
SESSION *NewRpcSessionEx(CEDAR *cedar, CLIENT_OPTION *option, UINT *err, char *client_str);
SESSION *NewRpcSessionEx2(CEDAR *cedar, CLIENT_OPTION *option, UINT *err, char *client_str, void *hWnd);

View File

@ -4721,22 +4721,6 @@ CMD_ServerCipherSet_Args ServerCipherSet [name]
CMD_ServerCipherSet_[name] 指定设置加密和数字签名的程序。可以使用的程序一览,可以从 ServerCipherGet 指令中获取。
CMD_ServerCipherSet_PROMPT_NAME 指定的加密程序的名称:
# TUNDownOnDisconnectEnable command
CMD_TUNDownOnDisconnectEnable Enable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Help This allows you to enable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Args TUNDownOnDisconnectEnable
# TUNDownOnDisconnectDisable command
CMD_TUNDownOnDisconnectDisable Disable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Help This allows you to disable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Args TUNDownOnDisconnectDisable
# TUNDownOnDisconnectGet command
CMD_TUNDownOnDisconnectGet Get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Help This allows you to get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Args TUNDownOnDisconnectGet
CMD_TUNDownOnDisconnectGet_COLUMN1 Put TUN down on disconnect
# KeepEnable 命令
CMD_KeepEnable 启动 Internet 保持连接功能
CMD_KeepEnable_Help 启动 [互联网保持连接功能]。启动此功能后,如果一段时间没有通信数据,导致连接将被断开时,会自动发送数据包到任何服务器,互联网服务器一定的间隔,从而可以保持连接。\n目标主机名等可以通过 KeepSet 指令来设置。\nVPN Server 或 VPN Bridge 运行此命令时,您必须具有管理员的权限。

View File

@ -4704,22 +4704,6 @@ CMD_ServerCipherSet_Args ServerCipherSet [name]
CMD_ServerCipherSet_[name] This specifies the encrypted and electronic signature algorithm to set. You can obtain the list of usable algorithms by using the ServerCipherGet command.
CMD_ServerCipherSet_PROMPT_NAME Encrypted Algorithm Name to Specify:
# TUNDownOnDisconnectEnable command
CMD_TUNDownOnDisconnectEnable Enable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Help This allows you to enable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Args TUNDownOnDisconnectEnable
# TUNDownOnDisconnectDisable command
CMD_TUNDownOnDisconnectDisable Disable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Help This allows you to disable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Args TUNDownOnDisconnectDisable
# TUNDownOnDisconnectGet command
CMD_TUNDownOnDisconnectGet Get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Help This allows you to get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Args TUNDownOnDisconnectGet
CMD_TUNDownOnDisconnectGet_COLUMN1 Put TUN down on disconnect
# KeepEnable command
CMD_KeepEnable Enable the Keep Alive Internet Connection Function
CMD_KeepEnable_Help This allows you to enable the Keep Alive Internet Connection Function. By using the Keep Alive Internet Connection Function for network connection environments where connections will automatically be disconnected when there are periods of no communication that are longer than a set period, it is possible to keep alive the Internet connection by sending packets to a nominated server on the Internet at set intervals. \nYou can set a destination host name etc, by using the KeepSet command. \nTo execute this command on a VPN Server or VPN Bridge, you must have administrator privileges.

View File

@ -4706,22 +4706,6 @@ CMD_ServerCipherSet_Args ServerCipherSet [name]
CMD_ServerCipherSet_[name] 設定するる暗号化および電子署名アルゴリズムを指定します。使用可能なアルゴリズムの一覧は、ServerCipherGet コマンドで取得することができます。
CMD_ServerCipherSet_PROMPT_NAME 指定する暗号化アルゴリズム名:
# TUNDownOnDisconnectEnable command
CMD_TUNDownOnDisconnectEnable Enable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Help This allows you to enable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Args TUNDownOnDisconnectEnable
# TUNDownOnDisconnectDisable command
CMD_TUNDownOnDisconnectDisable Disable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Help This allows you to disable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Args TUNDownOnDisconnectDisable
# TUNDownOnDisconnectGet command
CMD_TUNDownOnDisconnectGet Get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Help This allows you to get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Args TUNDownOnDisconnectGet
CMD_TUNDownOnDisconnectGet_COLUMN1 Put TUN down on disconnect
# KeepEnable コマンド
CMD_KeepEnable インターネット接続の維持機能の有効化
CMD_KeepEnable_Help [インターネット接続の維持機能] を有効にします。[インターネット接続の維持機能] を使用すると、一定期間無通信状態が続くと、自動的に接続が切断されるようなネットワーク接続環境の場合、インターネット上の任意のサーバーに対して一定間隔ごとにパケットを送信することにより、インターネット接続を維持することができます。\n接続先のホスト名などについては、KeepSet コマンドで設定することができます。\nVPN Server または VPN Bridge で、このコマンドを実行するには、管理者権限が必要です。

View File

@ -4684,22 +4684,6 @@ CMD_ServerCipherSet_Args ServerCipherSet [name]
CMD_ServerCipherSet_[name] 설정해야 루루 암호화 및 전자 서명 알고리즘을 지정합니다. 사용 가능한 알고리즘 목록은 ServerCipherGet 명령에서 얻을 수 있습니다.
CMD_ServerCipherSet_PROMPT_NAME 지정하는 암호화 알고리즘 명:
# TUNDownOnDisconnectEnable command
CMD_TUNDownOnDisconnectEnable Enable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Help This allows you to enable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Args TUNDownOnDisconnectEnable
# TUNDownOnDisconnectDisable command
CMD_TUNDownOnDisconnectDisable Disable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Help This allows you to disable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Args TUNDownOnDisconnectDisable
# TUNDownOnDisconnectGet command
CMD_TUNDownOnDisconnectGet Get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Help This allows you to get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Args TUNDownOnDisconnectGet
CMD_TUNDownOnDisconnectGet_COLUMN1 Put TUN down on disconnect
# KeepEnable 명령
CMD_KeepEnable 인터넷 연결 유지 기능 활성화
CMD_KeepEnable_Help 인터넷 연결 유지 기능을 활성화합니다. 인터넷 연결 유지 기능을 사용하면 일정 기간 비활성 상태가 계속되면 자동으로 연결이 끊길와 같은 네트워크 환경의 경우 인터넷에있는 서버에 일정 간격으로 패킷 를 전송하여 인터넷 연결을 유지할 수 있습니다. \n 연결할 호스트 이름과 같은 내용은 KeepSet 명령으로 설정할 수 있습니다. \nVPN Server 또는 VPN Bridge에서이 명령을 실행하려면 관리자 권한이 필요합니다.

View File

@ -4429,25 +4429,6 @@ CMD_ServerCipherSet_[name] This specifies the encrypted and electronic signature
CMD_ServerCipherSet_PROMPT_NAME Encrypted Algorithm Name to Specify:
# TUNDownOnDisconnectEnable command
CMD_TUNDownOnDisconnectEnable Enable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Help This allows you to enable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Args TUNDownOnDisconnectEnable
# TUNDownOnDisconnectDisable command
CMD_TUNDownOnDisconnectDisable Disable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Help This allows you to disable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Args TUNDownOnDisconnectDisable
# TUNDownOnDisconnectGet command
CMD_TUNDownOnDisconnectGet Get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Help This allows you to get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Args TUNDownOnDisconnectGet
CMD_TUNDownOnDisconnectGet_COLUMN1 Put TUN down on disconnect
# KeepEnable command
CMD_KeepEnable Enable the Keep Alive Internet Connection Function
CMD_KeepEnable_Help This allows you to enable the Keep Alive Internet Connection Function. By using the Keep Alive Internet Connection Function for network connection environments where connections will automatically be disconnected when there are periods of no communication that are longer than a set period, it is possible to keep alive the Internet connection by sending packets to a nominated server on the Internet at set intervals. \nYou can set a destination host name etc, by using the KeepSet command. \nTo execute this command on a VPN Server or VPN Bridge, you must have administrator privileges.

View File

@ -7301,16 +7301,6 @@ SW_LINK_NAME_DEBUG Debugging Information Collecting Tool
SW_LINK_NAME_DEBUG_COMMENT Collects debugging information of SoftEther VPN. Use this tool only if your support staff asks you to do so.
CMD_ACCOUNT_COLUMN_RETRY_ON_SERVER_CERT Retry on Untrusted Server Certificate
CMD_TUNDownOnDisconnectEnable Enable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Help This allows you to enable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Args TUNDownOnDisconnectEnable
CMD_TUNDownOnDisconnectDisable Disable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Help This allows you to disable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Args TUNDownOnDisconnectDisable
CMD_TUNDownOnDisconnectGet Get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Help This allows you to get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Args TUNDownOnDisconnectGet
CMD_TUNDownOnDisconnectGet_COLUMN1 Put TUN down on disconnect
CMD_AccountRetryOnServerCertEnable Enable VPN connection retry if server certificate is invalid
CMD_AccountRetryOnServerCertEnable_Help When a VPN Connection Setting registered on the VPN Client is specified and that VPN Connection Setting connects to a VPN Server, use this to enable the option to retry connection if Server certificate cannot be trusted.
CMD_AccountRetryOnServerCertEnable_Args AccountRetryOnServerCertEnable [name]

View File

@ -4722,21 +4722,6 @@ CMD_ServerCipherSet_Args ServerCipherSet [name]
CMD_ServerCipherSet_[name] 指定設置加密和數位簽章的程式。可以使用的程式一覽,可以從 ServerCipherGet 指令中獲取。
CMD_ServerCipherSet_PROMPT_NAME 指定的加密程式的名稱:
# TUNDownOnDisconnectEnable command
CMD_TUNDownOnDisconnectEnable Enable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Help This allows you to enable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectEnable_Args TUNDownOnDisconnectEnable
# TUNDownOnDisconnectDisable command
CMD_TUNDownOnDisconnectDisable Disable the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Help This allows you to disable Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectDisable_Args TUNDownOnDisconnectDisable
# TUNDownOnDisconnectGet command
CMD_TUNDownOnDisconnectGet Get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Help This allows you to get status of the Turn TUN Interface Down on Client Disconnect Function.
CMD_TUNDownOnDisconnectGet_Args TUNDownOnDisconnectGet
CMD_TUNDownOnDisconnectGet_COLUMN1 Put TUN down on disconnect
# KeepEnable 命令
CMD_KeepEnable 啟動 Internet 保持連接功能