使用Python的標準庫確定本地IP位址
在Python中,存取本地IP位址只能透過標準函式庫來實現。此方法與平台無關,允許跨作業系統保持一致的行為。
為了實現此目的,使用了套接字模組。它提供了一種與網路協定互動並執行各種套接字操作的強大方法。我們的特定任務包括尋找本機 IP 位址,可以透過以下步驟序列檢索該位址:
- 建立套接字物件。該物件表示通訊端點,可以配置為使用特定的協定和套接字類型。在我們的範例中,我們將使用帶有socket.AF_INET(表示IPv4套接字)和socket.SOCK_DGRAM(表示資料封包為導向的套接字)的套接字建構子。
- 連接到遠端位址。為了檢索本機 IP 位址,我們啟動與已知遠端主機的連線。在這裡,我們選擇連接到 IP 位址“8.8.8.8”,它屬於 Google 的公共 DNS 伺服器。使用連接埠 80,這是 HTTP 流量的標準連接埠。
- 呼叫 getsockname()。成功建立連線後,我們可以透過呼叫socket物件的getsockname()方法來取得socket的本地位址。此方法傳回一個包含兩個元素的元組:第一個元素保存本機 IP 位址,第二個元素表示套接字綁定到的連接埠號碼。
- 擷取本機 IP 位址。從 getsockname() 傳回的元組中,我們主要對第一個元素感興趣,其中包含字串形式的本機 IP 位址。
透過執行下列步驟並使用套接字模組,Python 程式可以有效地確定其網路介面上可用的本機 IP 位址。
以上是如何僅使用Python標準函式庫取得我的本機IP位址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!