移至主內容
DarkRanger's Secret Area

主導覽

  • 首頁
  • 關於本站
  • Linux
  • 程式開發
  • N900
  • 譯文
  • 資訊技術辭典

文章分類

  • 影劇
  • 遊戲
  • 筆記
  • 雜文
  • 資訊技術
  • 站務訊息

最新內容

  • Linux 檢視本機區網 IP 位址的圖形介面程式
  • How-To:Linux 安裝 Combined Arms
  • 【自製】InsomniaSDL
  • Godzilla: The First 70 Years (2025)
  • How Kernel Anti-Cheats Work
  • Total War: Three Kingdoms (2019)
  • Linux 系統下的新酷音詞庫格式轉換
  • 技嘉主機板的 BIOS 更新與操作雜記
  • Project Hail Mary - 從被動化為主動的勇者之旅
  • Godzilla vs. Biollante (1989)

Linux 檢視本機區網 IP 位址的圖形介面程式

發表日期:星期四, 05/21/2026 - 22:34

……這完完全全不是出於任何嚴肅性的需求,而是 100% 為了玩遊戲的緣故。由於基本上無法期待每款連線遊戲的區域網路搜尋功能,在各種不同條件下都能夠正常地運作。所以最直接的手段,就是在其中一部電腦開設遊戲伺服器後,其它電腦便在遊戲中手動輸入目標主機的 IP 位址,來進行連線(這些電腦全都是 Linux 系統)。因此在這個情境下,若能夠更快速地檢視電腦當前分配到的區網 IP 位址,就會顯得方便許多。

 

本文的操作環境為 Fedora 43 及 RHEL 9。熟練的 Linux 使用者應該已經知悉主機 IP 位址的查詢指令,例如「ip a」等等這些方式。然而在桌面環境下、以及特別是在玩遊戲的情境裡,若還得再另外開啟一個虛擬終端機視窗或分頁,並輸入指令做查詢,顯然並不是很方便。覺得最好的情形就是單獨一支視窗程式,點一下就能夠顯示 IP 位址出來。於是寫了一支名為 local_ip_viewer.py 的 Python 腳本程式,使用 Python 內建的 Tkinter 函式庫來呈現一個簡單的顯示視窗。雖然如果是更認真的圖形介面設計需求,DR 自己通常會傾向使用 PySide 或 PyQt 函式庫,但因為此次不過就是要顯示 IP 位址而已,所以就一切從簡即可。

 

 

在命令行下給予腳本可執行權限(chmod +x) 後,只要確認系統有安裝 Tkinter 函式庫(python3-tkinter),就應能夠順利執行,並顯示一個小視窗出來。然而由於最終的目的,是要能夠快速地點選並執行此程式,所以還是要再製作一個 Linux 桌面環境的啟動項目(desktop entry)。在「~/.local/share/applications」目錄下,新增一個 local-ip.desktop 文字檔,然後寫入例如以下內容:

[Desktop Entry]
Encoding=UTF-8
Name=Local IP Viewer
Exec=/home/<username>/local_ip/local_ip_viewer.py
Icon=/home/<username>/local_ip/icon.png
Path=/home/<username>/local_ip/
Type=Application
Categories=System

 

其中 Exec、Icon 及 Path 都必須設定相關目標的正確所在位置。由於無法使用波浪符號(~)或 $HOME 來指代使用者家目錄,所以都必須輸入完整的絕對路徑。至於 Icon 圖示,可以考慮上 Wikimedia Commons 網站隨意找一個圖示,並將圖檔儲存成 PNG 格式來用。至於 Categories 則可參照文件說明,來進行程式分類的指定。

 

完成前述編輯後,再執行「xdg-desktop-menu forceupdate」指令,新增的啟動項目便應能夠在桌面環境的應用程式清單中顯示出來。可以自行釘選到例如 GNOME 桌面環境的下方快捷列(Dash)中,藉此實現更快速的點選與執行。

 

 

筆記