pingもなく、バインディングユーティリティ(dig、nslookupなど)もない場合、リモートホストのIPアドレスをどのように取得しますか?
「Xのインストール」または「サイドカーコンテナの使用」を含まない回答が必要です。 bashと基本的なシェルコマンドにのみ依存するものを探しています。
答え1
使用getent
:
$ getent hosts unix.stackexchange.com
151.101.193.69 unix.stackexchange.com unix.stackexchange.com
答え2
「現代的な」システムではsystemd-resolve
。
マニュアルページから:
systemd-resolveは、systemd-resolved.service(8)リゾルバーサービスを介してドメイン名、IPv4およびIPv6アドレス、DNSリソースレコード、およびサービスを検証するために使用できます。デフォルトでは、指定されたパラメータのリストはホスト名で解決され、IPv4およびIPv6アドレスを取得します。指定されたパラメータ形式がIPv4またはIPv6操作の場合は、反対の操作が実行され、指定されたアドレスのホスト名が検索されます。
getentはDNSクエリを実行しますが、nsswitch.conf
DNSクエリを実行できない可能性があります。--type
すべての種類のDNSレコードタイプにアクセスするオプションを渡すこともできます。