2013-05-02 68 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