返回列表 發帖

[VPN] 黑貓VPN pptp-client的pcc,並搭配Script修正!

本帖最後由 gfx86674 於 2015-1-13 19:01 編輯

小弟試做二個黑貓VPN pptp-client的pcc,並搭配Script做修正!
有興趣可以參考:


二個黑貓VPN帳號 pptp-client /route /nat /mangle設定:


二條pptp-client做pcc ,怕的是其中一個斷線,均分會出問題.
斷線的流量會分到default route ,而非另一個pptp-client遞補..

且斷線的pptp-client會不斷的重新連線 ,若伺服器掛點
必造成log不斷的被pptp-client重新連線資訊給洗版.

所以搭配腳本修正,
若其中一條pptp-client斷線便自動修正成單線負載.
斷線的pptp-client會自動關閉,定時透過ping來測試伺服器反應.
等伺服器有回應時再重新嘗試連接.
等pptp-client上線後,待腳本恢復原本的pcc負載即可.

目前黑貓是屬於斷網的狀態,所有的VPN設定將被腳本干預全部關閉.
就算您手動enable部份功能,下一秒也會被腳本disable

pptp-client 是 pppoe-client ?
yiucsw 發表於 2016-4-14 09:36
打錯字了,是pppoe-client
已更正~

TOP

pptp-client 是 pppoe-client ?

TOP

本帖最後由 gfx86674 於 2016-4-14 09:52 編輯
回復  gfx86674

有点逻辑的问题。在中国PPPOE启动慢,SSTP 没有办法Resolve name. 有什么办法解决?
01:2 ...
yiucsw 發表於 2016-4-13 08:49
外圍再加一層pppoe-out1判斷,等pppoe-out1上線後,script才開始.
  1. :if ([/interface pppoe-client get [find name=pppoe-out1] running]) \
  2.     do={
  3.         ## reset sstp client down
  4.         :if (![/interface sstp-client get [find name=hksstp-out1] running] \
  5.              && ![/interface sstp-client get [find name=nowsstp-out1] running]) \
  6.             do={
  7.                 :delay 1m
  8.                 :if (![/interface sstp-client get [find name=hksstp-out1] running] \
  9.                       && ![/interface sstp-client get [find name=nowsstp-out1] running]) \
  10.                     do={
  11.                         /system reboot
  12.                        } \
  13.                     else={
  14.                           /interface sstp-client disable [find running=no]
  15.                           /interface sstp-client enable [find running=no]
  16.                          }
  17.                }\
  18.             else={
  19.                   /interface sstp-client disable [find running=no]
  20.                   /interface sstp-client enable [find running=no]
  21.                  }
  22.        }
複製代碼

TOP

回復 34# gfx86674

有点逻辑的问题。在中国PPPOE启动慢,SSTP 没有办法Resolve name. 有什么办法解决?
01:25:43 system,info verified routeros-mipsbe-6.31.npk
01:25:45 system,warning omitting package routeros-mipsbe-6.31: newer package router
os-mipsbe-6.35rc48 is already installed
01:25:51 pppoe,ppp,info pppoe-out1: initializing...
01:25:51 pppoe,ppp,info pppoe-out1: connecting...
01:25:51 sstp,ppp,info HKWXsstp-out1: initializing...
01:25:51 sstp,ppp,info HKWXsstp-out1: connecting...
01:25:51 sstp,ppp,info HKNXsstp-out1: initializing...
01:25:51 sstp,ppp,info HKNXsstp-out1: connecting...
01:25:51 sstp,ppp,info HKYXsstp-out1: initializing...
01:25:51 sstp,ppp,info HKYXsstp-out1: connecting...
01:26:01 pppoe,ppp,info pppoe-out1: terminating... - disconnected
01:26:01 pppoe,ppp,info pppoe-out1: disconnected
01:26:01 pppoe,ppp,info pppoe-out1: initializing...
01:26:01 pppoe,ppp,info pppoe-out1: connecting...
01:26:01 sstp,ppp,info HKNXsstp-out1: terminating... - could not resolve name
01:26:01 sstp,ppp,info HKNXsstp-out1: disconnected
01:26:01 sstp,ppp,info HKNXsstp-out1: initializing...
01:26:01 sstp,ppp,info HKNXsstp-out1: connecting...
01:26:01 sstp,ppp,info HKWXsstp-out1: terminating... - could not resolve name
01:26:01 sstp,ppp,info HKWXsstp-out1: disconnected
01:26:01 sstp,ppp,info HKWXsstp-out1: initializing...
01:26:01 sstp,ppp,info HKWXsstp-out1: connecting...
01:26:01 sstp,ppp,info HKYXsstp-out1: terminating... - could not resolve name
01:26:01 sstp,ppp,info HKYXsstp-out1: disconnected
01:26:01 sstp,ppp,info HKYXsstp-out1: initializing...
01:26:01 sstp,ppp,info HKYXsstp-out1: connecting...
01:26:10 pppoe,ppp,info pppoe-out1: terminating... - disconnected
01:26:10 pppoe,ppp,info pppoe-out1: disconnected
01:26:11 pppoe,ppp,info pppoe-out1: initializing...
01:26:11 pppoe,ppp,info pppoe-out1: connecting...
01:26:11 sstp,ppp,info HKYXsstp-out1: terminating... - could not resolve name
01:26:11 sstp,ppp,info HKYXsstp-out1: disconnected
01:26:11 sstp,ppp,info HKWXsstp-out1: terminating... - could not resolve name

TOP

谢谢。初步测试没有问题。

/tool netwatch
add down-script=vpndown host=192.168.8X.1 interval=5m timeout=3s up-script=\
    ":log info \"HKY up\""
add down-script=vpndown host=192.168.18X.1 interval=5m timeout=3s up-script=\
    ":log info \"HKW up\""

还没有测试System Reboot.

TOP

回復  gfx86674

主要是用Netwatch 看看SSTP的Server 是不是能Ping到。要是不能Ping到,而SSTP-Client 是r ...
yiucsw 發表於 2016-4-11 23:46
修正:
  1. ## reset sstp client down
  2. :if (![/interface sstp-client get [find name=hksstp-out1] running] \
  3.          && ![/interface sstp-client get [find name=nowsstp-out1] running]) \
  4.     do={
  5.            :delay 1m
  6.            :if (![/interface sstp-client get [find name=hksstp-out1] running] \
  7.                     && ![/interface sstp-client get [find name=nowsstp-out1] running]) \
  8.                do={
  9.                       /system reboot
  10.                      } \
  11.                else={
  12.                         /interface sstp-client disable [find running=no]
  13.                         /interface sstp-client enable [find running=no]
  14.                        }
  15.           }\
  16.     else={
  17.              /interface sstp-client disable [find running=no]
  18.              /interface sstp-client enable [find running=no]
  19.             }
複製代碼

TOP

回復 8# gfx86674

主要是用Netwatch 看看SSTP的Server 是不是能Ping到。要是不能Ping到,而SSTP-Client 是running,/System Reboot, 要是
SSTP-Client是 SSTP-Client 不是Running, reset SSTP-Client.

想优化以下的Script:
1)我有两个SSTP Link,hksstp & nowsstp, 要是两个都Down,才System reboot,还有Reboot 后还有不运行能Delay 10分钟,再REboot.
2)现在的SSTP name 同 192.168.83.1 是没有联系的。能用 192.168.83.1 找回hksstp,减少hard code 的depend.

/tool netwatch
add down-script=":log info \"cn down\"" host=192.168.83.1 up-script=":log info \"cn up\"" interval=1m timeout=3s

## reset sstp client down
:if ([/interface sstp-client get hksstp-out1 running]=true)
do={:delay 60; /system reboot} else={:log warning "sstp-out1 NOT running";
:interface sstp-client disable sstp-out;
:delay 10;
:interface sstp-client enable sstp-out;};

TOP

这是网络架构图:

对不起,还没有用过双线。是两条宽带线一起连到Ethernet1,Ethernet2?然后如何?
主要的问题是已经有Policy Route, 如何加双线支持。
1)RB3 用中国电信DNS为主DNS。
2)RB3 打出SSTP到RB1/RB2, 主要用途:在中国端:用中国移动上传数据(优酷)数据到SSTP。用中国电信下载数据到SSTP。中国移动上传的速度快。
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

本帖最後由 gfx86674 於 2015-6-30 02:23 編輯
回復  yiucsw
1)DNS/HTTP - 中國移動Block太多DNS,HTTP 地址。
2)不穩定,在本地都常常斷線。
3)中國移動,PPOE連到RB
4)SSTP 是打出
yiucsw 發表於 2015-6-29 17:35



1)firewall filter過濾:
udp port:53
/ip firewall filter
add action=drop chain=input  dst-port=53 protocol=udp  src-address-list=!All-Lan

tcp port:80
/ip firewall filter
add action=drop chain=input  dst-port=80 protocol=tcp src-address-list=!All-Lan
add action=drop chain=forward  dst-port=80 protocol=tcp src-address-list=!All-Lan

2)透過1 ,問題即迎刃而解.

3 )
PPPoE:

中國移動全不勾選 ;中國電信 "只勾選Use Peer DNS"

/ip dhcp-server network


/ip route 新增:


/ip dns

完成後將是以中國移動為主的路由 ;DNS則是使用中國電信

4)若3是使用中國移動為第一路由 ,SSTP則當然是用中國移動撥出 ;
若是用中國電信 ,則自然由中國電信撥出
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

主要是 Load Balance SSTP。
同用中国电信的DNS
中国电信 是 12M, 中国移动是20M

TOP

回復 27# gfx86674

现在已有VPN,中国移动打入。有两个问题所有加中国电信宽带:1)DNS/HTTP - 中国移动Block太多DNS,HTTP 地址。2)不稳定,在本地都常常断线。

现在想
是中国电信有路由猫,分两条Network 到RB Router同TV Box。
是中国移动,PPOE连到RB。
SSTP 是打出。

TOP

回復 26# yiucsw

中國移動好像沒有真IP吧? 但是中國移動出海較快.
Welcome to my TaoBao shop: http://mandymak520.taobao.com/

TOP

本帖最後由 gfx86674 於 2015-6-29 10:42 編輯
刚上多一条Broadband (中国电信)线。现在是一条中国移动宽带(ADSL)加一条中国电信(ADSL)。在RB如何Set ...
yiucsw 發表於 2015-6-29 06:41

在設定之前您要思考中國移動寬帶 與中國電信 這兩個通道,
只允許一個從外面進入,還是兩個都開放?
如VPN連入,是開放中國移動寬帶 當入口;還是中國電信 ? 還是兩者皆可?

連接ADSL所設置PPPoE,算是PPP工具的一份子.
所以等於Router內有三個連線隧道,分別是 中國移動寬帶/中國電信/sstp
不曉得您做LoadBalance時 ,是只考慮 中國移動寬帶/中國電信 ;還是把sstp也納進去?

另外您有開放web-proxy給外地用戶使用嗎?
若沒開放,您只需做內部DHCP用戶的LoadBalance即可;

若有使用web-proxy ,則LoadBalance還必需考量Router ,
這樣web-proxy用戶連接時 ,Router才會做LoadBalance .

或許您會問為何LoadBalance需區分DHCP用戶與Router ??
這與路由判斷有關:


您從圖表中看到封包進入,從第一次路由判斷後被區分成路徑A 與路徑B.
DHCP用戶即路徑B ,Router即路徑A ...所以這兩個規劃是不同的.

平常用戶只需做路徑B即可看到LoadBalance的效果 ;

但使用web-proxy時,因為是Router先連接處理,再將封包轉送代理用戶.
所以這時您就必須思考除DHCP用戶外 ,路徑A (Router)是否也得做LoadBalance.
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

刚上多一条Broadband (中国电信)线。现在是一条中国移动宽带(ADSL)加一条中国电信(ADSL)。在RB如何Setup?
要是加了SSTP, 如何LoadBalance?

TOP

返回列表