發表文章

目前顯示的是有「mikrotik」標籤的文章

據說 cloudflare 也是可以用 ddns 的

 實作在 mikrotik 上更新 cloudflare ddns ip ,原來只要開通 cloudflare api 就行…… 單藍,要再加些楜椒和鹽… 工作環境:  Linux Shell  Mikrotik routerOS  cloudflare API # 建立更新 cloudflare DNS 記錄用的 API Token # create API Token in cloudflare The TOKEN value is created in the Cloudflare dashboard. Follow these steps: 1.  Click the profile icon in the top right of the dashboard, and choose 'My Profile' . 2.  Click on 'API Tokens' , then 'Create Token' . 3.  Click 'Start with a template' , then choose the 'Edit zone DNS' template. 4.  Under 'Zone Resources' , choose your top level domain name from the pull-down list on the right. 5.  Click 'Continue to summary' . 6.  Click 'Create Token' . 7.  Copy the token shown on the following screen and set the TOKEN environment variable to its value. # 更新 cloudflare DNS 紀錄會用到的變數 # 參考資料說要用 direnv 因為除錯失敗,直接把變數放到 gen_script 裏了…… # Variables needed for updating cloudflare DNS records HOST =api.cloudflare.com DOMAIN =yourDomain.n...

Mikrotik 定期執行腳本(script)

 已經設定好的腳本(Name: testScript)在 system > script list 裏面,原本想用檔案(.rsc)來管理,但是找不到檔案要怎麼移動,只好看看有沒有辦法繞過這個限制  工作環境:     Mikrotik wifi router          既存的 script: testScript          定期執行  結果找來找去只要一行指令:     system scheduler add name=testScript on-Event=testScript intervel=10m  system scheduler print 出現 testScript      收工!

在 Mikrotik 上更新 cloudflare 的 DDNS 記錄

 提供 DDNS 的服務商有很多,其實如果你用 M 家的機器,啟動後就有 DDNS 可以用,只是買了服務商的網域名稱,掛上自已的名字來用,所以得來折騰一下。   工作環境:     Mikrotik wifi router          DDNS update script     cloudflare DNS manager  參照 既有的 script ,到 dash > 概觀裏把 zone ID,你要更新的 domain (其實是 hostname / FQDN) ,再到 profile 裏把 API token for DNS ,TTL 這些參數找到,等一下設定 script 要用,然後在 cloudflare DNS manager 裏,把你要設的 A record 記錄,指到「 不正確 」的 IP,由於這個方式只適用非 proxy 的狀態( 僅DNS ),剛好合用, proxy 的部份就不折騰了,留給能人去試 XD,以上是和 cloudflare 相關的設定部份  回到 M 家的 wifi router 上,把剛才的收集到的參數在腳本裏改好,將改好的 script 貼到 system > scirpt list > name: DDNS > policy: read,write,test > source(貼上改好的腳本) > apply > run script ,以上是和 M 家 wifi router 相關的部份  如果你回到你的 cloudflare DNS manager 裏,你的 A 記錄和 TTL 更新了,恭喜你,成功了!  收工!    參考資料 / 資源: https://github.com/mike6715b/Mikrotik_CF_DDNS/blob/main/CF-Update.rsc  cloudflare > dash > profile cloudflare > profile > API > token

Mikrotik router 無法使用 winbox 透過 IP 連接

 不知道是不是設定的時侯連線狀態有佔住,還是用的是 wiregurad 的連接方式,當時是可以順利連上 router 的,這次想測 site-to-site wireguard 2個節點下的內部網路機器是否可以互相連通,發現要使用  winbox 進其中一個 router 時,無法透過 IP 登入,還好透過 MAC 仍然可以連進去,檢查 IP > services 發現 winbox 有打開,兩端內部網路機器可以互相 ping 到,多半又是防火牆擋住了  工作環境:     2 mikrotik router with site-to-site wireguard VPN       進入 router 後趕快把 log freeze ,並且找關鍵字 8291(預設的 winbox port),發現被 DROP ALL 的 firewall filter 擋下了,所以要設 log 才好排查設定啊~~  有 log 幫忙就能很容易知道要開什麼洞給自已鑽,因為 log 會詳細記錄封包的來龍去脈,照著把小門打開就行:記得 dst-address ,還有 src-address 要視你的需求和設定,改成你的目的地和來源的 IP 位置或是範圍 /ip firewall filter add action=accept chain=input comment="allow LAN/bridge to Winbox" \     connection-state=new dst-address=192.168.1.254 dst-port=8291 in-interface=\     bridge1 log=yes log-prefix="allow LAN/bridge to Winbox" protocol=tcp \     src-address=192.168.1.0/24   設好了以後,馬上用 winbox 透過 IP 連進 router ,已經可以登入了      收工!

Mikrotik CCR 無法更新

 新版(7.8) RouterOS 釋出,想要看看有沒有 ROSE storage 可以用,先升級看看,然後就GG了  工作環境:     Mikrotik CCR          firewall DROP all input after some open services  錯誤訊息: can't resolve DNS ,想必是沒開 DNS 進來,看了一下 log 知道從哪個介面來,從哪個 src port 來     /ip firewall filter add action=accept chain=input comment="allow DNS response" in-interface=\     pppoe-out1 log=yes log-prefix="allow DNS response" protocol=udp src-port=\     53  錯誤訊息變了: connection timed out,google之後找到論壇有人討論     /ip firewall filter add action=accept chain=input comment="allow Update allow established connections" in-interface=\add action=accept chain=input comment="Allow Update allow established connections" connection-state=\     established add action=accept chain=input comment="Allow Update2 allow related connections" connection-state=\     related  可以更新了 收工!

Mikrotik winbox refuse connection

  在整個 wireguard 的設定一陣忙祿之後,嘗試用 IPSec VPN 再次連回分享器,GG 了,好在這次只有一邊不能連,進去看 Log...  Log 說,用的是 IP Sec 連線,用的是 192.168.9.0 的網段,要連到 Winbox 被拒了  工作環境:   Mikrotik   Windows VPN 連線    winbox  相比2個端點的 firewall 發現有一點點不同,簡單,調成一樣就行,然後還是 GG…  後來看到2個端點的 service 設定不太一樣,原來是 IPSec 的網段沒有在允許的範圍內,於是把小門打開(winbox service 的 Address: 加入 IPSec 的網段 192.168.9.0/24),winbox 應聲打開 收工!

Mikrotik DNS Server 提供內部使用的名稱伺服器

 網域名稱對於使用者是蠻重要的服務,它雖然不貴一年400台幣左右,但是方便性無價,使用者絕對不會想去知道它的 IP ,他只想要他想找那台機器的時侯,提供你一個名字,然後你能幫他找到,那台機器在哪裏,所以就需要 DNS Server(以下稱DNS) ,也就是名稱伺服器,用來提供名稱和 IP 的對應,方便人機溝通  工作環境:   Mikrotik router    DNS Server for internal clients   Windows clients  Mikrotik 提供靜態名稱伺服器供使用者使用,在 IP > DNS > DNS settings: > Servers: 把內網的 Gateway(以下稱gw)的 IP 打上(例如: 192.168.0.1) > Allow Remote Request 勾起來 > Apply > OK ,這樣 DNS 就設好了  如果你要設定名稱對應,例如:192.168.0.2 名稱要叫使 notebook.router.lan 的話,在 IP > DNS > DNS settings: > Static > + > name: notebook.router.lan > Type: A > TTL: 1d > Address: 192.168.0.2 > Apply > OK ,有很多個就加很多次  如果你提供了 DHCP Server(以下簡稱 DHCP)讓使用者可以自動取得 IP 的話,記得到 IP > DHCP Server > Networks > 把對應的 Servers 填上去以便使用者自動取得 IP 時也使用你指定的 DNS  記得,那個 Allow Remote Request 勾起來,Allow Remote Request 勾起來,Allow Remote Request 勾起來,不然查找 DNS 的時侯,會一直 request timed out      收工!

Mikrotik firewall 開洞給 wireguard 鑽

 為了把不必要的門關起來,把 input drop all 的政策開起來之後,原本可以連線的 Wireguard 連不上了…  還好現在在設備旁  工作環境:   Mikrotik CCR site-to-site wireguard hapAC, CCR ip firewall filter +default drop input all   Wireguard windows peer   CCR 的 input filter 相對於 hapAC 在 wireguard 的路由管理應用在 firewall 好像是比較嚴格,其他設定一樣的狀況下,在開啟 input drop all 之後, wireguard 連接 hapAC 還是可以存取資源,但是連接 CCR 就馬上被關在門外,想必是得開小門… 操作:  wireguard 連遠端 site (hapAC)無法連回 CCR ,wireguard 連近端 site(CCR)無法通  在 CCR 實體線路把對方的內網 gateway 打開: /ip firewall filter add action=accept chain=input src-address=192.168.2.1  wireguard 連遠端 site (hapAC)可以連回 CCR ,wireguard 連近端 site(CCR)無法通  再把 wireguard 的網段打開: /ip firewall filter add action=accept chain=input src-address=10.10.10.0/30  wireguard 連近端也可以通了   收工!

Mikrotik site-to-site wireguard config 用 wireguard VPN 連接2個不同的分享器資源

  利用 VPN 來連接不同的網際網路上的節點實務上蠻常見的,如果你剛好在不同的房間裏,各自用分享器接到小烏龜上撥接上網是不是很方便,然後,各自掛了nas在自已的分享器上用,還是很方便,如果,有那麼一天,你隔壁的朋友說要存資料來我的 nas 存,是不是就有點麻煩又不怎麼安全,話說有網路用網路沒網路才走馬路…  工作環境:  中華電信小烏龜  2台分享器(Mikrotik)各自已經設好可以上網      各自接好了自已的nas在分享器下  使用 winbox / webfig 設定 :wireguard 的設定方式都是一樣的,請對方設好給你的 ip 位址,請對方提供你公鑰,然後就把這些資訊填好就可以連了,不管對方是一個site還是一個節點,連線位址在 Quick Set 右下角有個 )*^&*()*&^&*( .sn.mynetname.net 就是了,就不用煩惱ip是會變的, 可以參考這裏  site-to-site 要多設路由的部份(2個分享器都要設): IP > Routes > Dst. address: 對方(開放的)內網網段(eg:192.168.0.0/24) / gateway: 對方的 wireguard 的 IP(eg: 10.10.10.1/30) > Apply > OK  設好之後,就可以看到對方的網段之內的設備了,不用馬路也可以連來連去了。 收工!

Wireguard connecting multiple peers 一次連接多個節點

因為有2個點想要同時連接,從連線程式發現原本的連接設定是分別設定的,所以只能一次取得一個 Peer 之中的資源 ,如果想要同時連接的話,要修改一下。 工作環境:  Mikrotik routerOS 7.*  Windows wireguard 設定範例如下: [Interface] PrivateKey = removed Address = 192.168.0.11/32 [Peer] PublicKey = removed AllowedIPs = 192.168.1.0/24, 10.0.0.0/24, 192.168.0.0/24 Endpoint = 1.2.3.4:12345 PersistentKeepalive = 25 [Peer] PublicKey = removed AllowedIPs = 192.168.1.0/24, 10.0.0.0/24, 192.168.0.0/24 Endpoint = 2.3.4.5:23456 PersistentKeepalive = 25 如此便能一次連接2個節點,也能同時取得2個節點下的資源了。   收工!  ===================== 後記 ===================== wireguard server 的 ip 不能一樣,不然一次只能連一個點,如果 server IP 不一樣可以同時開兩個 p2p 的連接,不用再設定第3個連接設定檔把 Peer 設定合在一起

Mikrotik 快速設定 VPN server 使用 QuickSet

圖片
要連線回家拿東西就需要 VPN Server ,雖然 Mikrotik 提供很多種方式可以完成這個工作,但是總是繞來繞去,點來點去,常常連不上,卡來卡去,於是繼續點來點去、卡來卡去、無限循環,有負 QuickSet 的美意,又讓人有小孩開大車的感覺,趁著新年收假前,把這個爛尾已久的設定搞定。  工作環境:   Mikrotik Hap ac Router  最好是把路由器重設,把環境回復到最單純的程度,Quick Set 用起來就和市面上的分享器一樣好用,把設定值填一填馬上就可以上網,因為要啟用 VPN Server 所以記得把右下角的 VPN access 勾起來,然後設定好 Password,基本上就可以連回路由器了,真的是 Quick Set(如下圖)。 在 Windows 下連線 VPN 非常簡單,只要把你的 ip 或是右下方的 VPN address 填好,就可以連上了, 詳此 , ping 得到內網的 gateway IP、 DNS IP ,也連得到外界的網頁,但是…  連回自家的路由器之後會發現,連不到自家路由器裏的設備,等於得到一個跳板而已,沒有達成原本連回家拿東西的目的…  檢查 /interface/bridge 的設定, proxy-arp 已經打開,後來發現有人提到,把 /PPP/profile/default-encrypt 的 interface 指到 LAN 裏面就行了,如此一來 VPN 連入的設備會被視為 LAN 的一部份,再次開啟 webfig ,可以連到。    收工!

Mikrotik 檔案共享 / NAS

Mikrotik 的路由器有提供 USB 介面,雖然網站上一再強調那是用來做 log 記錄檔存取和讓使用者接 4G 網路的 dongle 用的,不是設計來做 NAS 的,但是,既然它能接 USB 裝置,使用者也不太想掛一台電腦只為了共享檔案,畢竟現在人手一機,能不開電腦,應該就還是手機平板解決吧,試試看能不能接個外接硬碟來做 NAS。  工作環境:  Mikrotik hapAc wifi router  B牌 500G 舊硬碟  設定方式:  到 File 裏看硬碟是掛載在什麼資料夾底下(disk#)記起來  到 IP / SMB 裏把 SMB 打開(Enable) / Apply  到 IP / SMB 裏把 SMB 的分享指定給內網使用者(all/bridge/lan-VPN-sp1) / Apply  到 IP / SMB / Share 裏新增一個分享資料夾的名稱(Share),和剛才的 disk#/(後面要加一個/) 相對應 / Apply  到 IP / SMB / Users 裏新增一個使用者名稱和密碼(read only 不要勾才能讀寫,有寫的權限才能上傳檔案哦) / Apply  回到 Windows: 在檔案總管裏打上分享器內網的 IP(\\192.168.2.1) 應該會看到 Share 點擊後,打好剛才的使用者名稱和密碼就可以用了。  在檔案總管裏打上分享器內網的 IP(\\192.168.2.1) 看到 Share 的時侯,可以按右鍵 / 連線網路磁碟機,給一個代號,之後就有捷徑可以用了。  試著上傳和下載檔案,速度只有 5MB/秒 左右,但是夠用了,省下的 NAS 的錢,可以去吃飯。  對了,那個硬碟要格式化成 fat 或是 ext3 的格式路由器才抓得到, ext4 格式的話路由器會一直重開。    收工!    ======================= 20221214 後記 ======================= 適合電腦使用,很順,不適合手持式裝置像是手機平板之類使用,一組正確的帳密輸好幾次才登進去,火都會上來啊,看來還不如一般的分享器...

今天想要不輸入帳密 ssh 登入 Mikrotik 路由器

 網路帶來的無限方便,靠的是一堆的驗證機制,其中最基本的就是帳號密碼了,礙於腦容量有限才開了這個部落格,面對越來越多的帳號密碼,那個空間有限的小房間,早已經相形見絀,所以各家瀏覽器都推出了「記住密碼」的功能,手機也可以用指紋來指取相應的帳號和密碼,那要登入管理的機器雖然早就有的交換金(密)鑰的機制,不過一直以來沒有很認真的實作,看起來簡單的動作,今天,又掉坑了。 工作環境:  Mikrotik RouterOS 4.xx  Windows 10     Putty 0.7     Puttygen     key.pub     key.ppk 先用 Puttygen 產生 key.pub key.ppk 如果你完全不想輸入密碼,私鑰不要設加密(passpharse)。 在 Mikrotik :   File > 上傳 key.pub   System > Users > SSH Keys > import key > 指定使用者、指定私鑰檔案 Putty 存一個登入設定檔:   DATA裏要指定使用者名稱(和你的 Mikrotik 帳號相對應);   Auth裏要指定你的私鑰檔案 再用剛才的登入設定檔連上去就可以了,整個流程看起來就是那麼平淡無奇又簡單明瞭,哪來的坑  ============================  坑  ============================  有4隻象:像象相像 unable to load key wrong format (6) 錯誤訊息大致像這樣 又一個眾人皆對我撞牆的慘況發生,然後就一堆真象到處亂竄,好在「真相只有一個,所有的謎題已經全部解開!」(又有人掛了 XD)。  pub 檔案的格式要長得像這樣: ssh-rsa *()_)(*&^%$%^&KEY*()&^%^&*())(*&*== rsa-key-yyyymmdd  ============================  ...

Mikrotik CCR 備份設定檔案

最近常用這家的路由器,如果只是要用分享器的功能市面上有很多其他的選擇,而且便宜也直覺,但是這個路由器有很多好用的功能,雖然除了一般分享器以外的功能都須要一些背景知識和設定,但是它的工作表現真的很穩定,近期可能離不開它了 Save Load 大法是破關的好朋友,經由不斷驗證,找出破關的路,所以學會備份是不二法門 工作環境:   Mikrotik CCR 路由器 v6   命令列(Command Mode): export file = test_backup test_backup.rsc system b a c k u p save name = test_backup test_backup.backup 操作界面(UI): Files > Backup > name: test_backup > Backup test_backup.backup 只要是 .backup 的檔案就是編碼過的,人眼無法判讀,rsc 的就是可判讀的文字檔 收工!

Mikrotik routerOS 的通透模式 transparent mode

人不是機器,一定得休息,網路設備,鐵打的,日以繼夜,吃電不喝水,難道真打不死?不是不是!撐得久點就是,時間到了,人該花的錢、人該做的工,跑不掉。 話說這次等著用電郵信箱,還等了很久的是 老 闆 本 人 ( 驚! ),這麼巧,偏偏機器老死在手邊一堆工作在趕的時侯,一開始還以為是伺服器的空間滿了,任務結束之後立馬去看了機器,不是空間滿了耶!!!奈啊捏!!暗暗叫( 罵 了 好 幾 聲 髒 話 )苦!那就不是一時半刻可以解決的了,查了查,辛勤工作10年以上的防火牆腦子燒了(CPU使用率100%),雖然看起來還能幫你指路,但是指的不好,還會放空(登入沒作幾個動作就給你一片空白的操作頁面),囧,「科技,始終沒有人性」,總在你最需要它的時侯拋棄你。一下子搞不定,先找高手,廠商的工程師人很好,登進去看了下,原來已經是前2代的機器,早就停產(順便表揚了一下勞苦功高的機器),閻王沒放手的,妙手果然還是留不住,還好手上有台新機,平時除了 NAT 用不到進階的功能,雖然有處置的方向,這新朋友和我也不是很熟啊~~(其實網路的東東和我都不熟啊~~嗚嗚嗚、哈哈哈),想讓新機上線還得先做些實驗,想就苦手,反正死馬當活馬醫,救得回來可以少花很多錢,這攤生意穩賺不賠,試試唄,萬分感謝老闆的耐性。 工作環境:   Mikrotik 路由器(routerOS)   應用伺服器 變動最少、最好的設定方式是以不變應萬變,設一台一般般、一模模一樣樣的防火牆來代替原本已經 RIP 的機器就是我的方針,依舊採用通透模式讓伺服器繼續服務。 拜了好一下股溝大神,還真難找到相符的文件,很難就表示得花很多時間找,再加很多時間拜讀不能達成目標的資料,總算找著好心人放了文件在網站上,圖說都有,超感動。 routerOS 上通透模式就是橋接( bridge ),再加上封包過濾( filter )。 特別的是橋接的時候不能用預設的 NAT 橋接設定,所以用了最後2個介面(eth4, eth5),我搞不懂,但是我懂得抄別人成功的。 在防火牆上把要提供的服務開放,透過封包過濾把服務的埠開通。 先在自已的桌上設好,試過,可以通,調成機器所在的環境設定,放到機櫃裏, Mmmmmmm……………………,連不上。最遠的距離莫過於機器就在面前卻怎麼也連不上。 讓設定生效: 只記得之前來裝...