2016-04-26 8 views
0

PHPコードを使用してLDAP server ip(s)を見つける方法はありますか?私は私が欲しいものに関連する何かを見つけなかったので、私は何も試していません。ちょうどLdapを読んで、何も見つからないLDAP server ipによってphp。PHPでLDAPサーバーのIPを取得

+0

ネットワーク上のLDAPサーバーを検出しようとしていますか、またはホスト名を使用して特定のLDAPサーバーのIPアドレスを取得しようとしていますか? –

+0

私が働いているところでldap server ipを取得しようとしています – urfusion

答えて

0

あなたは、特定のドメイン内のLDAPサーバを取得する機能で次のドロップを使用することができます。

/** 
* Get an array of all the LDAP servers for a domain by querying DNS. 
* 
* @param string $domain The domain name to query. 
* @return string[] 
*/ 
function getLdapServersForDomain($domain) 
{ 
    $hosts = dns_get_record('_ldap._tcp.'.$domain, DNS_SRV); 

    return is_array($hosts) ? array_column($hosts, 'target') : []; 
} 

$domainは、mydomain.comとして、FQDNが入ります。

これでLDAPサーバー名が取得されます。 IPアドレスが本当に必要な場合は、追加のロジックを追加することができます。これはまた、array_columnを使用して少なくともPHP 5.5を前提としています。

+0

私は 'print_r(getLdapServersForDomain(" mydomain.com "));; – urfusion

+0

あなたのサーバに設定された作品を持っていますか?これは、本質的にLDAPサービスレコードのDNSルックアップを行います。なんらかの理由でそれらが存在しないか、サーバーが内部DNSを見ていない場合、失敗する可能性があります。これはAD/OpenLDAPなのでしょうか? – ChadSikorra

+0

確認する必要はありません。 – urfusion

関連する問題