Linux unitednationsplay.com 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
nginx/1.20.1
Server IP : 188.130.139.92 & Your IP : 18.188.73.229
Domains :
Cant Read [ /etc/named.conf ]
User : web
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
home /
www /
unp /
vendor /
react /
dns /
src /
Query /
Delete
Unzip
Name
Size
Permission
Date
Action
CachedExecutor.php
1.48
KB
-rw-r--r--
2018-11-11 09:00
CancellationException.php
93
B
-rw-r--r--
2018-11-11 09:00
Executor.php
5.13
KB
-rw-r--r--
2018-11-11 09:00
ExecutorInterface.php
121
B
-rw-r--r--
2018-11-11 09:00
HostsFileExecutor.php
3
KB
-rw-r--r--
2018-11-11 09:00
Query.php
898
B
-rw-r--r--
2018-11-11 09:00
RecordBag.php
503
B
-rw-r--r--
2018-11-11 09:00
RecordCache.php
3.77
KB
-rw-r--r--
2018-11-11 09:00
RetryExecutor.php
2.46
KB
-rw-r--r--
2018-11-11 09:00
TimeoutException.php
81
B
-rw-r--r--
2018-11-11 09:00
TimeoutExecutor.php
913
B
-rw-r--r--
2018-11-11 09:00
UdpTransportExecutor.php
5.49
KB
-rw-r--r--
2018-11-11 09:00
Save
Rename
<?php namespace React\Dns\Query; use React\Dns\Config\HostsFile; use React\Dns\Model\Message; use React\Dns\Model\Record; use React\Promise; /** * Resolves hosts from the givne HostsFile or falls back to another executor * * If the host is found in the hosts file, it will not be passed to the actual * DNS executor. If the host is not found in the hosts file, it will be passed * to the DNS executor as a fallback. */ class HostsFileExecutor implements ExecutorInterface { private $hosts; private $fallback; public function __construct(HostsFile $hosts, ExecutorInterface $fallback) { $this->hosts = $hosts; $this->fallback = $fallback; } public function query($nameserver, Query $query) { if ($query->class === Message::CLASS_IN && ($query->type === Message::TYPE_A || $query->type === Message::TYPE_AAAA)) { // forward lookup for type A or AAAA $records = array(); $expectsColon = $query->type === Message::TYPE_AAAA; foreach ($this->hosts->getIpsForHost($query->name) as $ip) { // ensure this is an IPv4/IPV6 address according to query type if ((strpos($ip, ':') !== false) === $expectsColon) { $records[] = new Record($query->name, $query->type, $query->class, 0, $ip); } } if ($records) { return Promise\resolve( Message::createResponseWithAnswersForQuery($query, $records) ); } } elseif ($query->class === Message::CLASS_IN && $query->type === Message::TYPE_PTR) { // reverse lookup: extract IPv4 or IPv6 from special `.arpa` domain $ip = $this->getIpFromHost($query->name); if ($ip !== null) { $records = array(); foreach ($this->hosts->getHostsForIp($ip) as $host) { $records[] = new Record($query->name, $query->type, $query->class, 0, $host); } if ($records) { return Promise\resolve( Message::createResponseWithAnswersForQuery($query, $records) ); } } } return $this->fallback->query($nameserver, $query); } private function getIpFromHost($host) { if (substr($host, -13) === '.in-addr.arpa') { // IPv4: read as IP and reverse bytes $ip = @inet_pton(substr($host, 0, -13)); if ($ip === false || isset($ip[4])) { return null; } return inet_ntop(strrev($ip)); } elseif (substr($host, -9) === '.ip6.arpa') { // IPv6: replace dots, reverse nibbles and interpret as hexadecimal string $ip = @inet_ntop(pack('H*', strrev(str_replace('.', '', substr($host, 0, -9))))); if ($ip === false) { return null; } return $ip; } else { return null; } } }