本文 |
whoisパッケージは「削除されたパッケージ」に入っています。 https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/8/html-single/considerations_in_adopting_rhel_8/index
whoisコマンドに依存しているページがあるため、仕方ないのでphpでwhois問い合わせを書いてみました。 参考になれば。
# whois.php <?php $serv = isset($argv[1]) ? trim($argv[1]) : ''; $dom = isset($argv[2]) ? trim($argv[2]) : ''; $timeout = 3; $retry = 5;
$buf = []; $errs = []; do { $errno; $errmsg; $conn = sockconn($serv, 43, $errno, $errmsg, $timeout, $retry); if (!$conn) { $errs[] = ['errcd' => $errno, 'msg' => $errmsg]; break; } if (fputs($conn, "{$dom}\r\n") === false) { $errs[] = ['errcd' => 0, 'msg' => 'failed query domain.']; break; }
while (($lin = fgets($conn)) !== false) { $buf[] = $lin; }
fclose($conn); } while (false);
if ($buf) { print join("", $buf); } else { print join("\n", $errs); }
function sockconn($serv, $port = -1, &$errno = null, &$errmsg = null, $timeout = null, $retry = 0) { do { $conn = @fsockopen($serv, $port, $errno, $errmsg, $timeout); } while (!$conn && $retry--);
return $conn; } ?>
# 使い方 php whois.php [whois server] [domain name]
※ whois serverは別記事「TLD毎のwhoisサーバ一覧を取得する」でも調べられます。
|