[研究所] MikroTik RouterOS 學習 (持續更新)

不知道有沒有大大有把L2TP VPN Server架設起來
我自己是了許久只有PPTP VPN Server Run起來
不過我還是比較希望跑L2TP阿....

bob771025s00567 wrote:
不知道有沒有大大有把...(恕刪)


在 1F 有說明 L2TP remote dial-in 的做法, 或是你指的是 lan-to-lan?
FB:VoIP電話技術交流
pctine wrote:
在 1F 有說明 L...(恕刪)


我用Smart VPN Client 硬是連不上阿....

再來看看是哪個環節出錯好了....

Orz....

剛剛在測了一下用Smart VPN Client可在驗證就不行了....

不知道是甚麼原因....
結果reboot後就一切正常了......

看來以後設定好要習慣reboot一下.....

Joe680830 wrote:
也有可能是RB450G的CPU不夠力了,我的RB493G跟您用同顆CPU,
設定10幾條mangle+QoS跑50M/20M滿載時,觀察CPU loading常常跑到90%以上,
有點想換更高階機器或是拿PC來裝ROS。


我測試的結果發現不是CPU loading的問題,而是mangle跟Queues tree的設定不當。
經過調整mangle與Queues tree的策略後,目前大致已經正常了。
現在還在學習微調QoS中,RouterOS的QoS真是博大精深吶。


irsjx2vxo3ne3k84dr1dz4,r4pe8bez3/4ne3bq4bew2j92gea jx4hq me-2d8 e3hy4hi2ty k84!
pctine wrote:
關於你的問題, 這裡...(恕刪)


謝謝大大,大概了解了。

另外遇到一個很奇怪的問題
Port1: Master Port=Port2 :接數據機
Port2: Master Port=none
Port3: Master Port=none
Port4: Master Port=none
Port5: Master Port=Port2

新增bridge1,把Port2、Port3、Port4加入bridge1。

在bridge1上新增pppoe-out1撥號。

只要bridge1上的電腦離線(關機),pppoe-out1就會terminating disconnected,
等到電腦上線(開機)才會重新撥號。

全部Port用Master Port或Bridge串在一起時不會這樣,但是混合在一起就會發生。
找很久都沒有頭緒,再麻煩各位大大協助,
謝謝。
小淺 wrote:
謝謝大大,大概了解了...(恕刪)


除非你有很多 client 需要自己用 PPPoE 撥號出去, 才會將 WAN 規劃為多個 switch port, 但把它又 bridge 起來的用意就不了解了. 相信這種用法應該少之又少, 不如你直接問原廠吧!


ps: 一般在 ADSL MODEM 上就有 4 port switch, 所以在 RouterBoard 上做出多個 wan port switch, 但又未分別設定各 port 的 IP, 確實比較少見.
FB:VoIP電話技術交流
MikroTik to MikroTik IPSEC VPN 實作

IPSEC VPN 在不同廠牌的設備間常常因為一些參數未對應正確, 而造成 VPN tunnel 建立不起來, 但同廠牌的設備要建立 IPSEC VPN 應該很容易才對, 但這次卻花了小弟不少時間在 debug.

官方文件: IP/IPSEC

這裡並不介紹怎麼在 MikroTik 設定 IPSEC VPN, 請自行參考官方文件裡面的 site to site IPSEC VPN 的範例. 小弟寫了一個簡單的 ipsec script. 用的到的人可以直接套用.

:local srcLanIP 192.168.38.1
:local dstLanIP 192.168.22.1
:local srcaddress 192.168.38.0/24
:local dstaddress 192.168.22.0/24
:local srcgateway 111.111.111.111
:local dstgateway 222.222.222.222
:local sharedkey "testtest"
:local comment "to KHOME IPSEC"

# IPSEC peer
/ip ipsec peer
add address=$dstgateway port=500 auth-method=pre-shared-key \
comment=$comment secret=$sharedkey

# IPSEC policy
/ip ipsec policy
add comment=$comment tunnel=yes action=encrypt proposal=default \
src-address=$srcaddress dst-address=$dstaddress \
sa-src-address=$srcgateway sa-dst-address=$dstgateway

# print 是為了 place-before=0 生效(移至第一列)
/ip firewall nat
print
add chain=srcnat action=accept comment=$comment place-before=0 \
src-address=$srcaddress dst-address=$dstaddress

# IPSEC VPN keep-alive
/system scheduler
add disabled=no interval=1m name="IPSEC keep alive" on-event=\
"ping $dstLanIP src-address=$srcLanIP count=1" policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api


其實小弟也是依照該文件實作, 但當設定完兩端的 proposals, peers and Policies 時, 便立刻開啟 Terminal 試著去 ping remote gateway.


[admin@MikroTik] > ping 192.168.22.1
HOST SIZE TTL TIME STATUS
192.168.22.1 timeout
192.168.22.1 timeout
192.168.22.1 timeout
192.168.22.1 timeout
192.168.22.1 timeout
192.168.22.1 timeout
sent=6 received=0 packet-loss=100%


怎麼會 timeout? 重覆再比對了兩端的設定, 完全看不出那裡錯了, 索性在 PC 上去 ping 看看.

C:\Windows\system32>ping 192.168.22.1
Ping 192.168.22.1 (使用 32 位元組的資料):
回覆自 192.168.22.1: 位元組=32 時間=18ms TTL=63
回覆自 192.168.22.1: 位元組=32 時間=18ms TTL=63
回覆自 192.168.22.1: 位元組=32 時間=18ms TTL=63
回覆自 192.168.22.1: 位元組=32 時間=19ms TTL=63


怎麼 PC ping 是 ok 的, 反而是在 winbox terminal 不能 work. 後來才曉得, 原來要指定 interface 才行. (

[admin@MikroTik] > ping 192.168.22.1 interface=bridge-local
HOST SIZE TTL TIME STATUS
192.168.22.1 56 64 19ms
192.168.22.1 56 64 18ms
192.168.22.1 56 64 18ms
192.168.22.1 56 64 18ms
sent=4 received=4 packet-loss=0% min-rtt=18ms avg-rtt=18ms max-rtt=19ms


另一個難題!
這裡 IPSEC VPN 是建立起來了, 但發現另一個 '難題', 以前使用過的 firewall, 當 IPSEC VPN 建立起來時, 系統會自動加一筆 record 到 route table, 但在 MikroTik RouterOS 裡面並非如此, 在 route table 沒有這些資料, 而也沒有動態生成一 interface, 那麼要做一些額外的 routing 設定, 是要如何達成?
FB:VoIP電話技術交流
Scripts

官方文件: Scripts

RouterOS 強大除了本身功能的全面性外, 另一個主因是 Scripts, 即 User 可以自行撰寫程式, 一般市面上的 firewall or IP 分享器較少有此功能, 頂多也只是支援 telnet command, 但顯少加入程式設計的能力, 即像變數的設定或程序的控制(loop, if...).

小弟大多是利用 winbox GUI 先設定好所需功能, 再驗証完成後, 再利用 export command 匯出 script, 此時再把一些參數以變數代入, 畢竟那麼多參數也記不得那麼多. 但真正去寫時, 才發覺萬事起頭難, RouterOS 並不像傳統程式有那麼好的開發環境, 例如利用類似 compile 等方式, 一次就把語法有誤的地方 show 出來, 它是 runtime 的方式, 程式跑到那裡出錯了, 並不容易找出來, 不確定它是否有 steping or breakpoint 等設計.

多看看別人寫的 script 是入門最快的方法, 例如在前面 ipsec 一文所提到的 script, 當初就為了如何把 nat rule insert 在第一條傷透腦筋. 如下, 如果不下 print command, 那麼下一列的 "place-before=0" 是無法生效的, 所以 print command 在這裡的作用只是為了 index 而已. 至於在 script 裡出現很多的 [find ...] 的語法, 用途也是如此.


/ip firewall nat
print
add chain=srcnat action=accept comment=$comment place-before=0 \
src-address=$srcaddress dst-address=$dstaddress


RouterOS script 要寫的精, Console command 也必須多看看, 初學 RouterOS script, 班門弄斧了, 希望能給對 RouterOS 有興趣的網友一些參考.


FB:VoIP電話技術交流
有沒有大大能幫我看看
log檔這個mac是怎麼回事
謝謝

評分
複製連結
請輸入您要前往的頁數(1 ~ 736)