私のウェブサイトと友人のウェブサイトを私のコンピュータ(ミニホスティングプラットフォームなど)でホストしたいと思います。そのためにDebian、Bind9、Apacheを学びました。
私のシステムでは、すべてがうまく動作します。私のIPでも、私のネットワークの外で私のウェブサイトを開くことができます。ただし、私のドメイン名(例abx.com
:)には私のウェブサイトは表示されません。
abx.com
私のウェブサイトを指すようにどのように設定しますか?
答え1
人々がこのような質問をしたら、私はいつもこう言います。
他の人にあなたのDNSをホストさせる
真剣に。専門家が持っているネットワークの安定性はなく、DNSの安定性は幸せな生活の鍵です。他の人があなたよりも良いことを認めるのは弱点ではありません。彼らはあなたが持っていないものを持っています:途方もない冗長性。
ほとんどのレジストラは、複数の場所にある複数のサーバーに分散された無料のロードバランシングと冗長ネームサーバーサービスを提供します。 Webホストも同様で、かなり良い無料ホストもあります。
答え2
ドメインのDNS(Aレコード)はホスティングIPを指す必要があります。これはローカル環境では機能しているように見えるかもしれませんが、外部環境では機能しない可能性があります。これは階層的なDNSの性質によるものです。たとえば、abx.comを使用してドメインリゾルバ(abx.comをネットワークIP nn.nn.nn.nnに変換するシステム)を要求すると、次のことが発生します。
リゾルバは設定を確認して、DNS を探す場所を決定します。 Windowsでは、この設定は通常DHCPによって取得されるネットワークプロパティにあります。 UNIXシステムでは、項目設定が含まれているnsswitch.conf
場合はfindステートメントから、およびの組み合わせから取得されます。これが正確でネームサーバーエントリが含まれている場合、ファイルにリストされている順序でネームサーバーと通信します。dns
hosts
/etc/resolv.conf
nameserver
nsswitch.conf
resolv.conf
キャッシュが構成されている場合、ネームサーバーは要求されたローカル項目がすでに保存されていることを確認し、その場合はその結果を返します。エントリが存在しない場合は、DNS階層の検索を実行します。
この例では、ドメインは実際には3つのabx.com.
部分で構成されています。これはルートノードと呼ばれ、ほとんどのDNSはそれを表示しませんが、DNSの仕組みの基本です。 (またはon(末尾の点を参照)を試してみると、インターネットブラウザのアドレスバーのアドレスの末尾に点を置くのと同じように解決されます。ルートノードは実際にはネームサーバーの分散ネットワークです。多くの国、多くの組織、企業がホストしています。.
com
abx
.
host
nslookup
www.google.co.uk.
www.google.co.uk
リゾルバーに戻ると、hints
ルートネームサーバーの場所がわかります。次に、ルートネームサーバーの1つに、どのネームサーバーがcom
DNSクエリ部分を担当しているかを尋ねます。host -t ns com
またはを使用してこのステップをシミュレートできますnslookup -q=ns com
。その後、ネームサーバーはフォーラムを使用してそこにリストされているネームサーバーの1つを選択し、それを使用してドメインを要求しますabx.com
。
com
この時点で、ネームサーバーが他のネームサーバーに責任を委任するという委任というメカニズムに到達し、abx.com
これはNS
レコードを通じて行われます。ただし、このレコードにはドメインが含まれています。名前IPアドレスではありません。これらのドメイン名の相互接続方法はglue
レコードを介して行われるため、abx.com を例に挙げます。
abx IN NS ns1.abx.com
IN NS ns2.abx.com
ns1.abx.com IN A 10.10.10.10
ns2.abx.com IN A 10.11.11.11
リゾルバーは、NS
ネームサーバーレコードを要求すると、追加情報としてこれらのAレコードを取得します。その後、リゾルバはns1.abx.comまたはns2.abx.comからレコードを要求し、IPはDNSレコードを要求したブラウザ/プロセスに転送されます。abx.com
com
A
abx.com
ほとんどの個人ユーザー設定は通常、認証の最後の段階で中断されます。登録機関/サービスプロバイダからドメインを購入する過程を経ましたが、自分のネームサーバーへの委任を指すようにドメインを設定できませんでした。認証フェーズが機能するようにグルーレコードを配置する前に、登録機関にネームサーバーがどこにあるかを実際に知らせる必要があります。
このステップが完了し、パーサーが使用する最後の部分がrecursion
準備されました。これはすべて、あなたのabx.comゾーンが正しく設定され、インターネット全体にサービスを提供し、あなたまたはあなたのホスティングプロバイダによって設定されたファイアウォールがないと仮定します。
インターネットには、ドメインのステータスを確認できる多数のDNSツールのウェブサイトがあります。 (例えばDNS StuffのDNSツール)。また、dig
特定のネームサーバー(およびレコード)を具体的に照会し、出力からより詳細な応答を得るためにこのツールに慣れることをお勧めします。
全長DRホスティングプロバイダを使用して設定を確認し、ドメインNSレコードがネームサーバーIPを指していることを確認してください。接続をブロックするファイアウォールがないこと、BINDが実行されており、正しいDNSを提供していることを確認してください。外部ツールを使用して外部DNSを確認してDNSステータスを確認します。
答え3
世界中で見ることができるウェブサイトのドメイン名を登録してください。 DNS(ドメインネームサービス)に登録します。登録機関はあなたのIPアドレスをウェブサイトの名前に関連付けます。このサービスは有料です。