mirror of
https://github.com/danog/dns.git
synced 2024-11-26 20:14:51 +01:00
ee05df2e1e
This is another countermeasure as outlined in https://tools.ietf.org/html/rfc5452. Request IDs have 16 bits of entropy now. The port will change during requests, but is usually not random. However, there are systems that use a random port for :0 port requests. |
||
---|---|---|
examples | ||
lib | ||
test | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.php_cs.dist | ||
.travis.yml | ||
appveyor.yml | ||
composer.json | ||
CONTRIBUTING.md | ||
LICENSE | ||
Makefile | ||
phpunit.xml.dist | ||
README.md |
dns
amphp/dns
provides asynchronous DNS name resolution for Amp.
Installation
composer require amphp/dns
Example
<?php
require __DIR__ . '/vendor/autoload.php';
use Amp\Loop;
Loop::run(function () {
$githubIpv4 = (yield Amp\Dns\resolve("github.com", $options = ["types" => Amp\Dns\Record::A]));
var_dump($githubIpv4);
$googleIpv4 = Amp\Dns\resolve("google.com", $options = ["types" => Amp\Dns\Record::A]);
$googleIpv6 = Amp\Dns\resolve("google.com", $options = ["types" => Amp\Dns\Record::AAAA]);
$firstGoogleResult = (yield Amp\Promise\first([$googleIpv4, $googleIpv6]));
var_dump($firstGoogleResult);
$combinedGoogleResult = (yield Amp\Dns\resolve("google.com"));
var_dump($combinedGoogleResult);
$googleMx = (yield Amp\Dns\query("google.com", Amp\Dns\Record::MX));
var_dump($googleMx);
});