2014-01-23 90 views
0

有誰知道如何獲取客戶端上的DNS搜索後綴列表 - 既有已經手動添加的,也有由DHCP分配的後綴。我寧願有一個跨平臺的解決方案,但只有Windows解決方案才能工作。我找不到任何東西在pywin32或其他模塊...在Python中獲取DNS搜索後綴

+2

請詳細說明您的問題,你已經嘗試過任何代碼。 –

回答

2

經過一些調查,它看起來不像跨平臺的方式,因爲操作系統存儲此信息的方式不同。在Windows中,我最終通過查詢註冊表中的信息:

def getLocalDomainSuffix(): 
    domainSuffixSet = set() 
    netKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters') 
    for keyName in ("DhcpDomain", "SearchList"):  
     value, type = _winreg.QueryValueEx(netKey, keyName) 
     if value: 
      for item in value.split(','): 
       domainSuffixSet.add(item) 
    return domainSuffixSet