必要に応じて、ホームシステムでWebサイトをホストできます。ただし、注意が必要です。一部のインターネットサービスプロバイダー(ISP)は、顧客が自分のサーバーをホストすることを許可しませんが、他のユーザーはあなたに許可します。ホームユーザーが自分のサーバーをホストすることを許可しないISPは、サーバーが一般的に使用するポート上のトラフィックをブロックする場合があります。たとえば、インターネットからホームユーザーに割り当てるIPアドレスのポート25への接続をブロックすることで、自分のメールサーバーを実行できないようにすることができます。同様に、HTTPに使用されるデフォルトポート、ポート80、およびHTTPSに使用されるデフォルトポートをブロックすることにより、誰かが自分のWebサーバーをホストするのを阻止できます、ポート443。誰かが非標準ポートでWebサーバーを実行することにより、このようなブロックを回避できる可能性があります。たとえば、ポート7080でHTTP接続をリッスンするようにWebサーバーが構成されている場合、サイトにアクセスする可能性のあるすべての人にそのポート番号を提供できれば、サーバーにアクセスできます。たとえば、http://www.example.com/sompage.htmlまたはhttp://10.0.0.5/somepage.htmlを使用する代わりに、Webサイトへの訪問者はhttp://www.example.com:7080/を使用できます。 somepage.htmlまたはhttp://10.0.0.5/sompage.html。ただし、そのトラフィックはISPによってブロックされる可能性があります。
ほとんどの人はアクセスするときにポート番号を含めることに慣れていないので、あなたのウェブサイトが数人の友人だけでアクセスされることを期待している場合、その解決策はうまくいくかもしれませんが、あなたのサイトに世界中のインターネットオーディエンスがいることを望む場合、より問題が多いかもしれません。サイト。ただし、他のサイトからサイトにリンクしている場合は、ポート番号が含まれていればリンクは機能します。
ただし、ISPが独自のWebサーバーをホストすることを妨げていない場合を想定します。デフォルトのHTTPポート宛てのトラフィックを転送するようにルーターを構成する必要があります。そのプロトコルを使用する場合はHTTPSも、ローカルエリアネットワーク(LAN)上のWebサーバーの内部プライベートIPアドレスに転送する必要があります。これは、ほとんどのホームユーザーが、ルーターのLAN側のルーターの背後にあるシステムとインターネットに面する側のシステム、つまりワイドエリアネットワーク(WAN)上のシステム間の通信のためにネットワークアドレス変換を実行するルーターを持っているために必要です。)。つまり、ルーターには1つの外部パブリックIPアドレスがありますが、複数のプライベートIPアドレスが存在する場合がありますルータの背後にあるシステム用。たとえば、ルーターの後ろに、アドレスが192.168.0.4のラップトップとIPアドレスが192.168.0.5のデスクトップシステムがあるとします。これらのプライベートIPアドレスはインターネット経由でルーティングされません。通常、ホームルーターはNATを実行して、1つのパブリックIPアドレスのみを参照する外部システムがプライベートIPアドレスを持つルーターの背後にあるシステムと通信できるようにします。
ほとんどのホームルーターは、ネットワークアドレスとポートアドレスの変換を実行する機能を備えており、通常はセットアップがかなり簡単です。そのためには、そのことを知っておく必要があります。一部のルーターには非武装地帯(DMZ)設定があり、ルーターの外部から発生する接続はすべてルーターの内部の特定のシステムに接続するように指定できます。NAT / PATを介してホームサーバーにアクセスできるようにする場合は、動的ホスト構成プロトコル(DHCP)を介して割り当てられるため、変更される可能性があるアドレスではなく、静的IPアドレスを割り当てる必要があるため、ルーターは常に着信接続を適切なシステムにルーティングします。
ルーターの内部側のシステムのIPアドレスが変更される可能性があるほか、ホームネットワーク接続を使用している場合、ISPはDHCPを介してルーターの外部IPアドレスを割り当てる可能性があります。xxx.xxx.10.250だとしましょう。明日はxxx.xxx.10.251になるかもしれません。これは、ISPがDHCP経由で顧客にIPアドレスを割り当てるために使用する「リース時間」に依存します。リース時間は数時間、数日、1か月などになる可能性があります。そのため、xxx.xxx.10.250でWebサーバーにアクセスできることをユーザーに伝えた場合、変更があったときはいつでも新しいアドレスを伝える必要があります。一部のシステムでは、ISPが静的IPアドレスを提供せず、動的IPアドレスを提供する場合でも、ルーターを交換しない限り、同じままになる場合があります。たとえば、自宅のインターネットサービスの場合、新しいルーターからのメディアアクセス制御アドレス。
IPアドレスが頻繁に変更される場合でも、ISPから静的IPアドレスを購入できる場合があります。静的IPアドレスを月額料金でホームユーザーに販売する人もいれば、そうでない人もいます。
しかし、トラブルシューティングのためにホームユーザーのシステムに外部から接続したり、ホームベースのサーバーをセットアップしたりする必要があるときに使用するソリューションは、動的ドメインネームシステムを使用することです。これにより、ルーターの外部IPアドレスが異なる場合でも、完全修飾ドメイン名(FQDN)( martijn.example.comなど)を使用して、ホームベースのサーバーにアクセスできます。私はNo-IP.comを使用していますが、他のDDNSサービスもあります。DDNSが機能する方法は、DDNSサービスプロバイダーシステムと定期的に通信するルーターの内部LAN側のシステムにソフトウェアをインストールすることです。これにより、DDNSプロバイダーは、システムが通信している現在の外部IPアドレスを認識します。 。DDNSプロバイダーは、ドメインネームシステム(DNS)を更新しますサーバーは、martijn.example.comなどのFQDNをIPアドレスに変換して、ルーターの現在の外部IPアドレスを反映するサーバーです。そのため、martijn.example.comをブラウザに配置すると、正しいIPアドレスにリダイレクトされます。一部のルーターには、DDNSサービスプロバイダーを指定できる構成オプションがあるため、ホームシステムにソフトウェアをインストールする必要がない場合もあります。DDNSプロバイダーのアカウントが必要になるだけです。
独自のドメイン名を購入したい場合、DDNSプロバイダーは独自のドメイン名(例:martijn.com)の使用料を請求します。ただし、DDNSプロバイダーが提供するドメイン名を使用する場合は、No-IPが無料のサービスを提供するなど、DDNSサービスを無料で使用できる場合もあります。たとえば、プロバイダーがexample.comを所有している場合、martijn.comの料金を支払う必要がありますが、martijn.example.comを無料で使用できる場合があります。つまり、martijnなどの特定のホスト名を指定して、ドメイン名の1つで使用できます。
私はこのような構成をホームベースのWebサイトに長年使用しています。かなり信頼できるインターネット接続があり、ISPがホームベースのサーバーへのアクセスをブロックしない場合、トラフィックの少ないサイトでは実際にかなりうまく機能します。たとえば、毎日サイトに数百人以上の訪問者がいることを期待しておらず、利用可能な帯域幅をまだ飽和させていない場合などです。ただし、ホームベースのサーバーをセットアップするときに、ホスティングサービスの使用を推奨する可能性のある考慮事項、つまり、前述の考慮事項があります。
このような構成は小規模またはホームベースのビジネスにも使用できますが、Webサイトへのアクセスが重要な場合や、外部IPアドレスが頻繁に変更される可能性がある場合は、小規模またはホームベースのビジネスにはお勧めしません。サイトにアクセスすると、システムがIPアドレスをキャッシュするため、次にサイトにアクセスしたときに、システムは名前に関連付けられているIPアドレスを再度検索する必要がありません。生きる時間がある(TTL)そのようなキャッシュされたDNSエントリの値。それらは期限切れになり、システムは再びIPアドレスを検索しますが、システムに何分または何時間もとどまることがあります。また、他のDNSサーバーもエントリをキャッシュします。たとえば、MaryがComcastの顧客で、システムがmartijn.example.comに接続しているとします。彼女のシステムはComcast DNSサーバーにクエリを送信し、WebサイトのIPアドレスを取得する場合があります。したがって、ComcastサーバーはFQDNに対応するIPアドレスを認識します。Comcastの別の顧客であるBillもあなたのサイトにアクセスしたいと考えています。彼はこれまであなたのサイトにアクセスしたことがないため、彼のシステムはmartijn.example.comとそのIPアドレスの間の変換をキャッシュしていませんが、彼のシステムがComcast DNSサーバーにクエリを実行したとき、そのサーバーがFQDN、それはそのキャッシュからの答えを提供します。
したがって、IPアドレスが変更された場合、サーバーまたはルーターが1分以内にDDNSプロバイダーのDNSサーバーを更新しても、他のユーザーが古いIPアドレスを取得し、システムまたはISPのDNSサーバーまでWebサイトにアクセスできない可能性があります新しい現在のIPアドレスを取得します。キャッシングが原因で、TTL設定によっては、システムによっては、数時間後またはおそらく翌日も古いIPアドレスに接続しようとする可能性があります。家族や友人がウェブサイトにアクセスできるようにしたいだけなら、それは深刻な問題ではないかもしれませんが、ビジネスを運営している場合、それはおそらく許容できない問題です。
コメントに対処するための更新:
ドメイン名レジストラからドメイン名を購入する場合、多くの場合、システムのIPアドレスを指定するオプションがあり、それらのアドレスにドメイン名を介してアクセスできるようにするか、一時的に名前を「パーク」して、ポイントすることができます。レジストラに属するシステムに。独自のIPアドレスを指定する準備ができたら、レジストラは通常、必要に応じてドメイン名に関連付けられたIPアドレスを変更できるDNSサービスを提供します。多くは、DNSサービスを通じて、TTL値、つまりシステムがFQDNに対応するIPアドレスをキャッシュする時間を調整することもできます。したがって、IPアドレスを頻繁に変更する必要があると思われる場合は、短いTTLを指定します。レジストラには、指定できる最小TTLがあります。たとえば、5分または30分です。値は通常秒単位で指定されるため、5分のTTLは300と表示されます。
そのため、レジストラのDNSサービスを使用している場合は、レジストラを使用してアカウントにログインし、変更があるたびに、ドメイン名に関連付けられているIPアドレスを手動で変更する必要があります。または、DDNSサービスプロバイダーを使用して、FQDNからIPアドレスへの変換の変更が自動的に行われるようにすることもできます。DDNSサービスプロバイダーからドメイン名を購入してデフォルトでDNSサーバーを使用するか、別のレジストラからドメイン名を購入して、ドメインが提供するWebサイトの構成ページからDDNSプロバイダーのネームサーバーのIPアドレスを指定できます。名前レジストラ
別のオプションは、独自のDNSサーバーを実行することです。ドメイン名を購入するときに、レジストラのネームサーバーまたは他のいくつかのネームサーバーのいずれかと一緒に使用するネームサーバーを指定できます。たとえば、Webサーバーと同じシステムをDNSサーバーにすることができます。UDPおよびTCP IPプロトコルの場合、サーバーがDNSのデフォルトポートであるポート53でアクセス可能であることを確認する必要があります。次に、サーバーにスクリプト/プログラムを作成し、ルーターに割り当てられている外部IPアドレスを定期的に確認してゾーンファイルを更新します。DNSサーバー上のドメイン名。ただし、DNSサーバーの設定は、DDNSプロバイダーに依存するよりもはるかに複雑です。DNSサーバーをオンラインでセットアップするためのチュートリアルを見つけることができます(より複雑なルートを追求したい場合)。BINDは、LinuxシステムのDNSサービスで一般的に使用されます。MicrosoftのサーバーバージョンのWindows(Windows Server 2012など)には、Microsoftが提供するDNSサービスがあります。それも使用できます。レジストラのDNSサービスから始めることをお勧めします。これは、レジストラからドメイン名を購入した場合は通常無料ですが、独自のDNSサーバーを実行するというより難しいパスに乗り出したいと思っていたとしてもです。誰かがDNSサーバーなどのインターネットの基盤がどのように機能するかを知りたくない限り、レジストラまたはDDNSサービスプロバイダーのDNSサーバーを使用することは、ほとんどの人にとって最良のコースです。OpenDNSなどのDNSサービスを専門とする会社を通じてDNSサービスを取得することもできます。
ただし、短いTTL値を指定して自動更新を行った場合でも、新しいIPアドレスを取得してからインターネット上のすべてのシステムが使用を停止するまでの間に、TTLよりも遅延が大きくなる可能性があることに注意してください。古いIPアドレスと新しいIPアドレスを使用します。たとえば、GoDaddyの記事「DNSの伝播時間に影響を与える要因」を参照してください。(GoDaddyはドメイン名登録事業者です)。これは、新しいアドレスがインターネット上のすべてのシステムで利用可能になるまでに最大48時間かかる可能性がある理由を説明しています。たとえば、記事には「一部のISPはTTL設定を無視し、キャッシュされたレコードを2〜3日ごとにのみ更新する」と述べています。