2013-05-02 71 views
3

當我運行下面的命令來獲取主機IP:使用Python的插座模塊查找IP地址

socket.gethostbyname(socket.gethostname()) 

我得到MAC終端上出現以下錯誤:

socket.gaierror: [Errno 8] nodename nor servname provided, or not known 

任何想法是什麼問題可能是?

socket.gethostname()會返回正確的主機名。

+0

你是否試過傳遞'socket.gethostname()。strip()'? – dave 2013-05-02 06:56:33

+0

是的,我嘗試過,但它並沒有幫助 – KT100 2013-05-02 06:58:00

+0

如果你嘗試'ping'(從命令行)'socket.gethostname()'返回的主機,它是否說'未知主機'? – dave 2013-05-02 07:03:29

回答

3

嘗試打開爲根/etc/hosts文件,並添加一行類似下面

# IP ADDR  HOSTNAME 
192.168.1.1 your_desired_hostname 

和名稱應該可以解決。

明顯地用你的ip地址替換192.168.1.1