簡體   English   中英

在不使用外部庫的情況下獲取以太網適配器 IPv4 地址

[英]Get Ethernet adapter IPv4 address without using external libraries

我有兩台計算機用交叉電纜連接,第一次我需要啟動 PC1 作為服務器,PC2 作為客戶端,然后第二次 PC2 作為服務器,PC1 作為客戶端。 我使用 UDP 插座,它位於 Windows 上。 所以我不能只將 IP 放入代碼中,我需要服務器代碼來自動獲取 IP。

我試過這個:

hostname = socket.gethostname()    
IPAddr = socket.gethostbyname(hostname)

但這給了我錯誤的 IP。 我需要在 ipconfig/all 中檢查以太網適配器以太網時看到的 IP 地址。

我不確定你是否理解我的意思。 英語不是我最好的技能。

您可以嘗試使用netifaces package。 文檔在這里

import netifaces

ip = netifaces.ifaddresses('eth0')[netifaces.AF_INET][0]['addr']
print(ip)

eth0只是一個示例,您可以從ipconfig獲取實際的接口名稱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM