Windows Server DHCP Server 新增 Option

由於Aruba AP可以由DHCP Option 43 與 60 去指定 Controller 的位置,讓其順利報到,特別是需要跨網段。

但 Windows Server DCHP Server 卻沒有 Option 60 可以輸入,因些需要手動加入。

參考官方文件-Configuring a Windows-Based DHCP Server

環境︰Windows Server 2019(192.168.1.51)、Controller(192.168.1.30)、AP(VLAN5 DHCP IP)

首先從Server Manager打開DHCP的管理工具。

展開Server下的IPv4,選擇「Set Predefined Options…」

點「Add…」,跳出小視窗「Option Type」。

對照表格填入,按OK。

NameAruba Access Point
Data TypeString
Code60
DescriptionAruba AP vendor class identifier

在060 Aruba Access Point,Value > String設定「ArubaAP」,然後按OK。

進入要設定的Scope,在Scope Options右鍵選「Configure Options…」

勾選「060 Aruba Access Point」。

勾選「043 Vendor Specific Info」,在ASCII下方輸入 Controller IP Address。

完成在Windows Server新增Option 43與Option 60。

網路工程師的基礎教育(二) 光纖模組的檢查

參考資料

光纖模組,一般又簡稱為GBIC,是Giga Bitrate Interface Converter的縮寫,簡單來說就是把訊號由電轉換成光。實際上現在的樣子是SFP(Small Form Pluggable)奠定的,如今大部份都做成這樣的外型,也是最通用的。

GBIC

光纖有分多模跟單模,差別在於光束數目與能傳遞訊號的最大長度。單模多模的的成本不同,多模製作比較容易,所以便宜,然而單模可以用於較長距離的介接。至於會選用單模或多模,主要是依設備間的距離為主。

單模的GBIC跟多模的GBIC的收發技術不同,因此,互接無法通。

中間的光纖線也有分多模與單模使用,多模有 OM1、 OM2、 OM3、OM4等級之分,最後的數字越大,代表能支援更高的速率。OM4的線可勝任OM1環境,反之OM1就不能扛OM4的使用。

https://kknews.cc/zh-tw/tech/z3jjvx3.html

單模GBIC用多模的線,能通。 多模GBIC用單模的線,也能通。但不建議這樣用。

SFP支援到1G的速率,再上去是SFP+支援到10G的速率。雖然兩者外型相似,容易搞混,但使用技術不同,因此互接無法通。

在各家Switch中,用Transceiver來指這類的模組。各家都有出自家的Transceiver,Transceiver與設備不同品牌容易發生光纖模組不支援的情況,因此要留意 Transceiver 上的品牌是否與要接入的設備品牌相同與否。

到此先整理一下,簡單的要點就是︰單模光纖模組用單模線接單模, 多模光纖模組用多模線接多模,1G(SFP)接1G (SFP) ,10G(SFP+)接10G (SFP+) 。最後, 光纖模組外型相似,而且用錯不代表一定不能通,等到發覺時也通常接了一定的數量。

接光纖模組接線時,請檢查手上拿著的器材規格,一定留意不要用錯規格

上方光纖模組沒亮,下方有亮

光纖要能通,需要能收到對方的光,需要能發送自己的光,而且光送到對方時,還要有一定的強度(dB)。

光纖常發生不通的情形,要檢查出光纖哪裡出問題,才有辦法修復線路。

光纖模組有分為SX、LX,分別是紅外線(850nm)與雷射(1310nm)。在接到設備上時,SX的可以用肉眼看見紅光,而LX因為波長超過可見光範圍(360 – 830nm),所以肉眼看不到任何光。

LX用照機拍攝會發紫光

雖然肉眼不可見,但是用照機看,卻能捕捉到紫光。

光纖模組發光與否可以做為初步的故障判斷,若光纖模組有發光,可再檢查介接的光纖線,多模可以從線中的光纖看出紅光,而單模因為光束較集中的因素,難以用相機捕捉光源。

單模線。左︰單模光纖。 中︰多模光纖。 右︰無。
多模線。左 ︰單模光纖。 右︰多模光纖。

上述這些發光點,只有其中一邊會亮。亮邊為發送端,暗邊為接送端。亮的要接暗的,才會正常運作。有時候在經過光纖收容盒時會讓左右收發相反,這時看是否為亮對亮,如果是,就要把二芯光纖對掉, 左右對掉後的二芯變成亮對暗、暗對亮 ,光纖才能接通。

從外觀上看是最便捷的,但並不一定能代表強力的證據,有些仍會發光,再加上單模也沒有明顯的光可作參考,就算已確認兩芯皆是亮對暗之後,接上依然燈號不亮表示無法通。

這時需要更明確的數據,關於GBIC的數據,可以從Switch的CLI中下指令去查看Transceiver的狀態,就能進一步得知問題所在。

以Aruba 2930F為例,下「show interfaces transceiver detail」就能查看狀態。

故障的光纖模組
正常的光纖模組

最後重點整理︰

  • 光纖器材請在接上前確認類別,是否有使用規劃的器材。
  • 光纖模組可從發光與來判斷是否功能正常。
  • 多模光纖線若有看到紅光,代表光線有傳來。
  • 確保二芯是亮接暗、暗接亮,光纖布線施工可能讓左右相反,只需將光纖線左右拆開後對調,以達亮接暗、暗接亮的正確介接。
  • 確認線材正確接對之後,在Switch中下指令查詢,是最好的方式去找到光纖模組的故障原因

網路工程師的基礎教育(一) 連入設備

目標︰

用Console線去連入設備,並養成好的習慣。

事前準備︰

  1. 個人筆記型電腦。建議用Windows,因為本文都是以Windows為主。
  2. Console線。
  3. 練習用的已設定好的設備,並串接好。

要點︰

  1. 使用MobaXterm在每次連入都留下Log紀錄,並且使用SSH連入跟紀錄密碼,並且把所有設備都納入清單與整理。
  2. 知道要如何設定Console連入的Speed,試著查詢設備的Console Speed。
  3. 嘗試看RunningConfig去瞭解設備的設定。
  4. 用指令去得知設備的MAC Address、Serial Number以及現在運行的Firmware版本。
  5. 養成慣性下「Write Memory」或是「Save」等保存設定。

流程︰

  1. 先介紹要用到的線材與軟體。個人的終端機軟體以MobaXterm為主。
  2. 先用Console連入設備。如果沒有驅動程式,可以直接幫助處理。
  3. 介紹如何查詢COM,在裝置管理員中。再請打開藍牙,再把COM的號碼做更改到10。
  4. 新增一個Serial Session,選擇COM10,並且勾選保存LOG到當前資料夾。
  5. 詢問為什麼Speed是9600?會不會有別的Speed?大部分是9600,但也有不是的,請留意。
  6. 使用「Show Running」,並且簡單講其中Port、IP、Hostname等的設定,其餘可先跳過。
  7. 啟用SSH連線,並且要求下指令保存。
  8. 用有線介接設備,並且幫助其設定筆電的IP,使其筆電能SSH連上設備。
  9. 拔掉Console線。
  10. 要求以新增SSH Session的方式,去把所有設備納入。
  11. 把空白設備清單給他,要填上Hostname、設備型號、Serial Number、MAC Address、IP Address、Firmware Version。
  12. 修改Hostname,隨意打十個英文字母,並且要求下指令保存。
  13. 再修改Hostname,隨意打十個英文字母,並且要求下指令保存。
  14. 最後修改Hostname,隨意打十個英文字母,並且要求下指令保存。
  15. 關掉MobaXterm。要求他寫出最後三個Hostname,從同資料夾的LOG去找。

注意事項︰

  • 本次練習的指令都是直接講明,不要求其自尋找。
  • 二小時內要完成。

Win10如何調整Console的COM

在使用序列線(Serial),在裝置管理員會出現COM,找到對應的線後面括弧()的數字,就能只用終端機程式去連結設備。

但是,在啟用藍芽的時候,如果之前有在使用藍牙Console,也會產生對應的COM,這時COM後面的數字,可能會與有線COM衝突到,因此,在藍牙功能啟用與數字相衝突時,就無法正常使用有線的COM。但如果使用藍牙設備,如滑鼠,那關掉藍牙會很不方便。因此修改COM號是最好的方式。

要調整COM的數字,要從裝置管理員去做修改。

首先從左下角的Win按下滑鼠右鍵,點擊裝置管理員。

找到衝突的COM,在需要修改的COM按下滑鼠右鍵,選擇內容。

切到連接埠設定,按下進階。

在COM連接埠編號的下拉式選單做改成不衝突的COM號,然後按下確定,再按確定。

裝置管理員重新整理之後,可以看到調整過後的COM號。

Logitech文書滑鼠高階使用

最近買了一隻 Anywhere 2s,發現裡面自訂按鍵有手勢操作,這使得一鍵可以再搭配上下左右而延伸成五鍵使用。

研究了一下,為了要讓設定按鍵功能,先將日常文書動作拆成流程圖。

首先是結尾功能,這樣的功能後面不會馬上接動作。

  • 複製
  • 貼上
  • 剪下
  • 關閉視窗
  • 上一個桌面
  • 下一個桌面
  • 上一頁
  • 下一頁
  • 啟動應用程式(小畫家、計算機等)

結尾功能的配置適合對應按下時不會影響滑鼠移動的按鍵,像是側鍵。而滾輪左推右推就不適合用結尾功能。

接下來是連續功能,連續功能是後面可以接續動作,為一套動作的拆解。

  • 全選 > 剪下
  • 全選 > 複製
  • 全選 > 刪除
  • 段落選取(滑鼠左鍵連點三下) > 貼上 > 按Enter (搜尋)

多個步驟可以配置手勢的不同方向,透過順時針或逆時針依序執行,像是滾輪右推後,滑鼠往右(無),滑鼠往下(左鍵三下),滑鼠往左(貼上),滑鼠往上(按Enter),這樣在順時針轉一圈之後就完成把複製文字貼上並搜尋的動作組合。

若以 anywhere 2s 為例,滾輪的手勢操作適合連續功能,按鍵的手勢操作適合結尾功能,依照這種邏輯,再以文書處理使用習慣去安排,像我工作上常用小畫家、記事本,或是休閒搜尋時常使用貼上後搜尋,或是把文字複製到筆記本,針對這些常用操作,若能擺在單手操作滑鼠就能完成,效率就能大大提升。

旁邊的人要是看你操作,會一頭霧水,好像甚麼都沒動就使出一堆功能,然後得到吃驚的眼神。

20210707:針對不同應用程式做優化,可以參考作業系統的鍵盤快捷鍵,Windows中的鍵盤快速鍵。為了讓使用習慣一致,所以保留共同常用的功能,針對單一程式的功能做修改,建議從快捷鍵去找自己常用功能要怎麼按。

  • Chrome︰關閉分頁(Ctrl+W)、新增分頁。
  • Excel︰全部重新整理(Ctrl+Alt+F5)、重覆上一個動作(F4)
  • 所有︰檔案改名(F2)、 永久刪除(Shift + Delete)、切到第三個釘選(Win+3, 個人是Chrome)、內建截圖(Win + Shift + S)

以下分享我的配置:

[所有應用程式]

  • 滾輪左推:複製(單擊)、 剪下(上推)、 複製(左推)、 Ctrl+A(下推)、 Backspace(右推)
    ※下左(全選複製)、下上(全選剪下)、下右(全選刪除)
  • 滾輪右推:貼上(單擊)、 Enter(上推)、 貼上(左推)、 F2(下推)、 無(右推)
    ※下左上(將檔案名稱改成複製的文字)
  • 中間鍵:Win+Shift+S(單擊)、 關閉視窗(上推)、切到第三個釘選 (左推)、 Ctrl+S(下推)、 啟動功能表(右推)
  • 前側鍵:下一頁(單擊)、 記事本(上推)、 上一個桌面(左推)、 小畫家(下推)、 下一個桌面(右推)
  • 後側鍵:上一頁 (單擊)、 調高音量(上推)、 Shift+Delete(左推)、 降低音量(下推)、 靜音(右推)

[Excel]

  • 滾輪左推:複製(單擊)、 剪下(上推)、 複製(左推)、 Ctrl+A(下推)、 Backspace(右推)
    ※下左(全選複製)、下上(全選剪下)、下右(全選刪除)
  • 滾輪右推:貼上(單擊)、 Enter(上推)、 貼上(左推)、 滑鼠左鍵三下(下推)、 無(右推)
    ※下左上(選取文字後貼上複製的文字)
  • 中間鍵:F4(單擊)、 關閉視窗(上推)、切到第三個釘選 (左推)、 Ctrl+S(下推)、 啟動功能表(右推)
  • 前側鍵:下一頁(單擊)、 記事本(上推)、 上一個桌面(左推)、 小畫家(下推)、 下一個桌面(右推)
  • 後側鍵:上一頁 (單擊)、 調高音量(上推)、 Ctrl+Alt+F5(左推)、 降低音量(下推)、 靜音(右推)

[Chrome]

  • 滾輪左推:複製(單擊)、 剪下(上推)、 複製(左推)、 Ctrl+A(下推)、 Backspace(右推)
    ※下左(全選複製)、下上(全選剪下)、下右(全選刪除)
  • 滾輪右推:貼上(單擊)、 Enter(上推)、 貼上(左推)、 滑鼠左鍵三(下推)、 無(右推)
    ※下左上(將檔案名稱改成複製的文字)
  • 中間鍵:Win+Shift+S(單擊)、 關閉視窗(上推)、切到第三個釘選 (左推)、 Ctrl+S(下推)、 啟動功能表(右推)
  • 前側鍵:下一頁(單擊)、 記事本(上推)、 上一個桌面(左推)、 小畫家(下推)、 下一個桌面(右推)
  • 後側鍵:上一頁 (單擊)、 調高音量(上推)、 Ctrl+W(左推)、 降低音量(下推)、 靜音(右推)

Aruba ClearPass 學習

ClaerPass是個認證與策略管控的產品。在網路安全上,對於使用者(User)會給予不同的權限,權限決定能存取(Access)甚麼資源。像是訪客(Guset)就不應該能存取內部資源,以被限制的速率連上網際網路(Internet)瀏覽網頁等。

Aruba Certified ClearPass X系列的認證,並沒有出一本官方指南,只有操作手冊等,並不容易快速上手。當然,初學者想要使用ClearPass也不是那麼容易的事情,因為一個能用的情境,需要很多環節的設定。

最近考ACCA沒有通過,自身對於ClearPass其實也不是特別熟悉,因此決定要寫一些公開文章來紮實這類認證角色的相關知識。

要學習ClearPass的準備,建議要有一整套Aruba的環境:無線存取點(Access Point)、網路交換器(Switch)、無線控制器(Controller)、ClearPass,然後還要有License,不過這只要在經營Aruba品產的公司,就很容易解決。

首先要先安裝ClearPass,需要注意:

  1. 虛擬機的配置需求
  2. 虛擬機的硬體配置,要有兩個儲存空間

參考以下的影片,相信就能順利的完成。

ClearPass 6.9 User Guide

https://www.arubanetworks.com/techdocs/ClearPass/6.9/PolicyManager/Content/CPPM_UserGuide/About%20ClearPass/Intro_ClearPass.htm

如何成為網路工程師

個人還在成為一個成熟的網路工程師路上,但由於需要招募新人,換一個角度重新看待網路工程師,簡單地概述在三階段的角色。

規劃篇

弄清設備大致所需數目,檢查BOM表(Bill Of Material,物料清單),以及要用什麼概念去解決客戶需求。總之,規劃要具有可行性,擋下不可行的。

這階段與客戶之間的溝通主要是由業務進行,不過由於業務並不擅於網路專業而無法判斷數目或可行性,就會請工程師幫忙檢查與規劃。

在此,工程師要有遠見,推測進展與困難處,以及最後是否能做到解決客戶需求。這需要經驗跟專門技能兼具,也會是三塊之中,成熟最慢的部分。

施工篇

在業務送出報價單且被核准之後,施工篇就要開始了。

開始安排各週工程進度,順便跟客戶討實際明確設定規劃。經過一番等待,終於等到設備的到來。為了減少在客戶端安裝的時間,若客戶不介意,可以先在公司設定。

這時候是最好的學習機會,每個型號的指令不盡相同,有Edge到Core級的網路交換器,角色不同,功能不同。配合證照指南,在上面嘗試,可以平衡觀念與實際的落差。

經過前處理後把設備運到客戶那,目標則為安裝快且穩,追求更好效率的路上是無盡頭的。

維護篇

施工完成,照著招標需求驗收,驗收完成,就進入了維護階段。

不一定施工完後都會有維護,這要看案戶有沒有跟公司簽維護,多半在一開始談的時候就會有確定需不需維護。

維護不是去保養機器,多半是檢查設備設定跟記錄。在客戶有問題的時候,提供技術支援。

維護期,客戶多半是小問題,容易解決。設備故障就送修,並做設備歸來的重上線計劃。

這期間也是磨鍊心志跟基礎技術的好機會。

需要怎樣的技能才能勝任網路工程師

網路技術是相當廣的,因此只需要能擔下一階段的任務時,就可以勝任網路工程師。

經驗與學習是最重要,累積年資跟技術也是給自己薪水的保障。

技術需求最低的是「維護」,因為做好的東西通常不改是不會出問題。真有處理不來的問題,也還有技術更高的工程師可以請教,只要具有學習的心態,很快就能勝任。

接著是人格特質︰喜歡邏輯推理,化繁為簡,條理分明。最後工作上要看很多英文,所以英文程度好是很大的加分。

如何成為網路工程師

這是給沒有經歷的人,想要換工作的人。

基本網路知識是門檻,而基本網路知識可以從證照CCNA或是其它有系統的教材學來,如果是踏實學習,在實戰上不至於會過於無助跟挫折。

網路是經常變化的,新技術跟新問題也是不斷出現,保持一顆學習的心,一路學習,勇敢學習,即使是跨出自己負責的範圍也學一點,也許哪天遇到的問題就要需要各範圍的技術才能解決。

QR Code替換

QR code掃描出來的結果只是一串文字,而這串文字通常具有意義,如果這串文字能被解讀,就會再執行某些功能。

現實中QR Code的應用廣泛,產品上,廣告上,還是應用程式之中,都可以見到其足跡。QR code有一個很重要的特性,它是可以被還原的,即使部分圖像被汙漬蓋住,仍然藉由演算法校正,還原出本身資訊。

只要不破壞過度,放上LOGO之類的,QR Code依舊可以正確掃出資訊。

有些訊息不方便明說,會想要藏匿於訊息之中,一般無心人不會察覺,便可在無形之中傳遞訊息給特定人。

QR Code很常見,如果不是需要,人們並不會對QR Code特別起注意,難道你會看到QR Code就掃嗎?

有一種方法:用QR Code替換QR Code,把現實場景的QR Code換成帶有訊息的QR Code。這樣只需要:將QR Code重製、一點修圖能力,就可以藏得很完美。

QR Code 掃碼器QR碼產生器

找一張原圖,帶有可正常掃瞄的QR Code。

首先要先將QR Code還原成文字,把QR Code圖片傳到電腦,使用 QR Code 掃碼器 ,就可以得到文字。

接下來,使用 QR碼產生器 並輸入文字,對照要被替換的QR Code調整參數到相似,然後產生QR Code。

編輯兩個QR Code,把被替換的QR Code的Logo放到新QR Code上,並把新QR Code調整成跟被替換的QR Code相近的大小。

最後在原圖上做QR Code替換。

網路證照考試通用準備指南

目前有ACSA ACMA ACMP CCNA CCNP證照,除了為公信力的證明之外,對我來說,有時候是門消遣。

正因為多次的準備經驗,這裡訂出一套指南,給各位參考,同時也給以後的自己一個明確的方針。

步驟︰

  1. 瞭解要考的科目
  2. 制定準備的流程
  3. 反覆練習,驗證與筆記
  4. 考前調整
  5. 考後檢視

瞭解要考的科目

有三個基本︰考試代碼、測驗目標與考試範圍、及格分數。

考試代碼是報考的依據,有時候會改版,因此使代碼變動,萬一只看名稱就決定,可能會意外地弄錯!走錯路的話只能重走。

測驗目標與考試範圍是重要的方向,有時候會以為看書就夠了,反而放錯重點,在不重要的部分花太多時間,沒有準備到要考的部分,因此可能看到題目才意識到慘了。

及格分數是絕對的標準,能決定得要花多少時間準備,如果有很多容錯空間,意味著更多的的信心,即使沒有全部準備好,也可以提前去考。

制定準備的流程

就像攻略一座山嶺,不過這座山的全貌未知,也許有先人建好的登山路徑,或沒有。先不要急著開始,這樣多半會走很多的彎路。

鳥瞰這座證照山,這座山並不想考倒人,是張開雙手歡迎有毅力的登山客。大略看一下考試範圍,試想一下 實際的應用 ,這些多半是來自於為了解決一些處境,當你瞭這些,就能隱約領會到思路,照著思路,通常會很順利地攻頂。

拿出設備玩,或是打開程式,也許你不瞭該做些什麼,沒有關係,隨意點點,如果可以就隨意改改設定,再搭配鳥瞰圖看看,會記住有些地點(專有名詞),這樣子之後在準備時看到,很快就能反應過來。

下一步是安排登山路線,如果有官方指南,就跟著章節走,如果沒有,就跟著考試範圍走。先從基礎開始,再看需要基礎的部分,如果看不懂,就得退回到基礎,不要把有看過當成進度,懂的部分,能解釋脈絡的部分,才是真正的進度。這點在初學者上特別常見。

筆記很重要,像是個登山點。知識會隨著時間淡去,日後難免會回頭,若沒筆記,就得從最一開始的入口爬起。筆記只有一個重點,就是要自己一讀能懂、一思就能想到。目錄也是個很棒的途徑。總之,當有需要回頭的時候,能馬上想到在哪裡找,就合格了。

反覆練習,驗證

把題目做成習題是很有幫助的,像是VCE這類的模擬考試。

反覆練習直到不會因為一時失誤就低於了及格分數。

到了這一步,如果有設備跟程式,就能驗證題目的內容。驗證的能力即為證照應具備的能力,如果不做驗證,多半禁不起考驗。

考前調整

從上一步能發現自己的弱點,再檢視一下考試說明跟課本,如果看到一個詞就能想到延伸概念,準備已夠。這時面對不足,可能無法從書中得到解答,再找其它的資源,超出範圍也無所謂,弄懂它。

然後不要把自己弄得太累,不要太緊繃,因為差不多定形了,讓自己精神好,反而會是增加分數的最好方法。

考後檢視

拿到成績單,會有各部分的對錯題數,回想起在作答過程中有哪些不確定,是否與錯題數可以對上。

馬上紀錄下自己在意的部份,在考完六小時內完成。考不過也不要太難過,如果扎實做好,下次一定會更高的分。

電腦版Chrome長截圖

如果頁面不長,可以使用內建工具。三個步驟,參考

  1. 按下F12,叫出開發人員工具。
  2. 按下Ctrl+Shift+P,叫出開發人員工具命令列
  3. 輸入「full」,按下Enter。※full為 Capture full size screenshot的縮寫。

網頁長截圖會以下載的方式保存。

試過一些方式,這一套是最簡潔的流程。最近瀏覽不少設定的操作步驟,指令簡單的話,看純文字是比較好操作跟記憶的。

近期在著手evernote到onenote的轉換,相容性蠻不合,但只是要保存過去的紀錄,用圖片格式儲存紀錄,也沒有甚麼關係。

身為工程師,就是要懶一下,把一切都變成一鍵完成才過癮!
寫了python,搭配QuickTextPaste,不過礙於環境參數不同,只有自己能用,無法共享給別人。

如果頁面過長,就會發現內建工具並無法擷取下來,最底下會被砍掉部分(超越20480px)。

可以從擴充功能去安裝Chrome FireShot,參考

安裝完後,在該擴充功能的設定打開存取權。

接著使用 Ctrl + Shift + Y,就可以看到以滾動頁面的方式進行長截圖。

完成後有圖片跟pdf兩種格式可以下載。

2021-05 近期簡述

自從上一篇公告發出後,還是沒有很認真照著架構填起,生活總有比較優先的事情,所以不是那麼在意這邊的雜亂以及人氣的低下。

對於目前的人生規劃,要把部落格振興可能得看向年底了,這有好有壞,好是我遇到很多更重要的事情,壞是我沒能在社會認可的價值這塊繼續成長。

工作忙的時候,為了最優先的事情:保持個好狀況,把一些想寫的文章拖延了好幾周,結果現在可以寫的時候,卻沒有了想寫的衝勁。

最近很忙,除了案子之外,還有好幾張證照排隊,念書又有點倦怠,效率不怎樣,加上其他的規劃,已經去了大半閒閒的日子。每天都有該做的事情,專注力也不是那麼好,使得寫一篇文章都很像是奢侈。

這一兩個月有做出一個改變,就是盡可能把知識記在「OneNote」,並且做了比較認真的分類,之後會把公開連結分享在這裡,對於有使用onenote的朋友,就可以把感興趣的筆記本納入自我的懷抱,方便參考。

時間越是忙碌,就越想要得到優質的知識。我盡量在有限的時間寫出有幫助的文章跟紀錄,其實寫文章為了不只是幫閱讀者節省時間,也是替自己留下日後可查詢的紀錄,對大家都好。

希望有機會盡快趕快安排振興計畫,如果時間充裕的話。

Python NTP對時

對於自動化,時間準確是很重要的,如果運作在虛擬機上,尤其是重新啟動的時候,系統時間很容易跑掉,然後發生意外跟紀錄上的不準確。所以在執行自動化之前,先跑對時,是很重要的環節。

python指令碼設定系統時間的兩種方法

上方連結是參考,裡面有兩種code,都可以用,只是都不是臺灣版本。所以下方會放上改成臺灣版本的code,以及在python3上可運作的語法。

這裡要以 watch.stdtime.gov.tw 為準,使用 nslookup 去查詢得到 IP 為 118.163.81.63 。

如果要修改系統時間,那麼在執行的時候,請記得使用「管理員權限」。

import socket 
import struct 
import time 
import win32api 
TimeServer = '118.163.81.63' #watch.stdtime.gov.tw
Port = 123 
def getTime(): 
    TIME_1970 = 2208988800
    client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 
    data = b'\x1b' + b'\0'*47 
    client.sendto(data, (TimeServer, Port)) 
    data, address = client.recvfrom(1024) 
    data_result = struct.unpack('!12I', data)[10] 
    data_result -= TIME_1970 
    return data_result 
def setSystemTime(): 
    tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst = time.gmtime(getTime()) 
    win32api.SetSystemTime(tm_year, tm_mon, tm_wday, tm_mday, tm_hour, tm_min, tm_sec, 0) 
    print("Set System OK!")
if __name__ == '__main__': 
    setSystemTime() 
    print("%d-%d-%d %d:%d:%d" % time.localtime(getTime())[:6])

NTPlIB

import os 
import time 
import ntplib 

c = ntplib.NTPClient() 
response = c.request('watch.stdtime.gov.tw') 
ts = response.tx_time 
_date = time.strftime('%Y-%m-%d',time.localtime(ts)) 
_time = time.strftime('%X',time.localtime(ts)) 
print('date {} && time {}'.format(_date,_time))