2013-07-15 26 views
1

執行net_adm:names()時,出現錯誤{error,nxdomain}。 nxdomain意味着域名不存在,但我能夠在終端中ping我的主機名,並在不同終端上啓動的Erlang節點之間成功ping通。因此,我不知道如何解決這個問題?Erlang:net_adm:names()返回{error,nxdomain}

謝謝。

+0

嘗試使用-sname啓動兩個節點。這不需要有效的主機名。 –

回答

1
net_adm:names() 

默認爲本地主機,它通過

net_adm:localhost() 

這反過來又獲得使用這兩個功能:

inet:gethostname(). 
net_db:res_option(domain). 

,並從系統中獲得該信息,所以檢查什麼由

返回
hostname 
cat /etc/resolv.conf #or something else depending on OS 

您的操作系統可能會向Erlang報告錯誤的域,因此您可以在手動輸入域時對其進行ping操作,但在使用從net_db:res_option(domain)獲取的域時不能。編輯/etc/resolv.conf應該可以解決你的問題。

相關問題