init
This commit is contained in:
35
vendor/react/dns/examples/13-reverse-dns.php
vendored
Executable file
35
vendor/react/dns/examples/13-reverse-dns.php
vendored
Executable file
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
use React\Dns\Config\Config;
|
||||
use React\Dns\Resolver\Factory;
|
||||
use React\Dns\Model\Message;
|
||||
|
||||
require __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
$loop = React\EventLoop\Factory::create();
|
||||
|
||||
$config = Config::loadSystemConfigBlocking();
|
||||
$server = $config->nameservers ? reset($config->nameservers) : '8.8.8.8';
|
||||
|
||||
$factory = new Factory();
|
||||
$resolver = $factory->create($server, $loop);
|
||||
|
||||
$ip = isset($argv[1]) ? $argv[1] : '8.8.8.8';
|
||||
|
||||
if (@inet_pton($ip) === false) {
|
||||
exit('Error: Given argument is not a valid IP' . PHP_EOL);
|
||||
}
|
||||
|
||||
if (strpos($ip, ':') === false) {
|
||||
$name = inet_ntop(strrev(inet_pton($ip))) . '.in-addr.arpa';
|
||||
} else {
|
||||
$name = wordwrap(strrev(bin2hex(inet_pton($ip))), 1, '.', true) . '.ip6.arpa';
|
||||
}
|
||||
|
||||
$resolver->resolveAll($name, Message::TYPE_PTR)->then(function (array $names) {
|
||||
var_dump($names);
|
||||
}, function (Exception $e) {
|
||||
echo $e->getMessage() . PHP_EOL;
|
||||
});
|
||||
|
||||
$loop->run();
|
||||
Reference in New Issue
Block a user