2026年1月29日 星期四

[Linux]NTP時間服務套件(chrony)的配置安裝與測試


在網路服務時代,時間的準確性和同步性是所有分散式系統協同運作的基礎,無論是日誌分析、資料庫交易一致性和安全憑證驗證等等服務,精確的時間同步是基礎的必備條件。前陣子考量平替Window AD(Active Directory)權限管理等功能,嘗試安裝和測試的Freeipa服務就是一個需要時間同步的應用服務,因為在Freeipa的前置作業中,需先行確認伺服器端和各個客戶端的時間同步性,以確保Freeipa正常服務。

網路時間協定(NTP, Network Time Protocol)是實現該必備條件的標準化網路協定,其允許電腦主機或嵌入式開發板透過網路與時間伺服器達到時間同步的效果。NTP運作的核心在於其階層式(Stratum)架構。最頂層是Stratum 0(如原子鐘),Stratum 1 直接從 Stratum 0 獲取時間,而 Stratum 2 則從 Stratum 1 同步,依此類推。傳統上,ntpd(NTP daemon)是主流選擇,其歷史悠久且功能強大,但在現代化系統中逐漸顯露其侷限性,特別是在啟動速度與應對時間波動方面的表現。隨著技術演進,兩個時間同步的解決方案(chrony和systemd-timesyncd)逐漸取代ntpd,相較於傳統 ntpd方案,這兩個套件提供更加精準可靠的時間同步服務,尤其是在虛擬化環境和網路不穩定的場景。

2026年1月5日 星期一

[IT Network]如何配置反向路徑過濾器(rp_filter),以解決路由不對稱問題?


前陣子開始在樹莓派中安裝Rocky Linux OS,基於個人方便使用,一併部署Tailscale並建置Subnet Router,便於由外網連到樹莓派作業。經過一段時間使用,發現一個現象,當在同一個區域網路(LAN)內,電腦若啟動Tailscale往往無法透過內部區網IP直接SSH連線到樹莓派,同時也無法ping到內部區網IP。經查詢,才了解有一個反向路徑過濾(rp_filter)機制需要適當配置模式,Linux 核心才會依照模式處理封包和路徑。另外,Rocky Linux OS和Ubuntu的rp_filter預設值不同,所以之前ssh 連線到Ubuntu沒有發現該現象。

本文說明反向路徑過濾(rp_filter)的機制,以及如何透過調整Linux 核心的"反向路徑過濾(rp_filter)"配置,達到內部區網(不需啟動Tailscale)和外網(需啟動Tailscale)環境下,均能順利連線的效果。