ネットワークを自動的に作成する一連の技法である。ゼロ・コンフィギュレーション・ネットワーキングはコンピュータやプリンターといったデバイスを自動的にネットワークに接続することを可能にする。いったサービスの設定をする必要があり、場合によっては個々のコンピュータのネットワーク設定を人手で変更する必要もあり、時間がかかり面倒である。次の3つの技術に基づいている。外部リンクアドレス選択[編集]IPv4とIPv6には共にIPアドレスを自動設定する標準の方法が存在する。DHCPサーバが利用できないときの最後の手段としてのみ使用する。通常、IPv4ホストはグローバルかリンクローカルかを問わずDHCPの割り当てたアドレスを使用している。その理由の1つは、IPv4ホストがインタフェース毎に1つのアドレスしか必要としないためである。1つの理由は、全てのIPv4ホストが分散名前解決機能(例えば、マルチキャストDNS)を実装しているわけではなく、そのためネットワーク上の他ホストの自動設定されたリンクローカルアドレスを発見するのが困難なためである。必要な情報を持ったユニキャスト方式のDNSサーバを必要とし、一部のネットワークはDHCPで割り当てたホストとアドレスに関する情報で自動的に更新されるDNSサーバを備えている。IPv6ホストはインタフェース毎に複数のアドレスをサポートすることを要求される。それだけでなく、IPv6ホストはグローバルアドレスが利用可能な場合でもリンクローカルアドレスを設定できなければならない。IPv6ホストは複数のルータアドバタイズメント・メッセージの受信に応じて複数のグローバルアドレスを自分で設定することがあり、それによってDHCP6サーバを不要としている。IPv4でもIPv6でも、自動設定アドレスのホスト固有部分は無作為に生成されることがある。ホストは通常ブロードキャストクエリを通じて、生成するアドレスをそのローカルネットワーク内の他ホストが使っていないことを保証する必要がある。この技法を「リンクローカル」アドレス割り当てと呼ぶ。サポートしている[1])。発表し、そこからアップルとマイクロソフトの実装が生まれた。両社の実装はよく似ている。この2つのプロトコルは名前解決の方法に若干の差異がある。名前空間にあるドメイン名を選ぶことができ、それを特別なマルチキャストIPアドレスを使って告知する。ドメインに特別な意味論を導入するため[3]、IETFの何人かのメンバーが問題視している[4]。現在のLLMNRのドラフトでは任意のドメイン名を選択できるが、IETFの一部メンバーはセキュリティ上の危険を指摘している[5]。似たAPIを使うプロトコルだが、マルチキャストプロトコル上に実装されている。LAN上の各コンピュータはそれぞれDNSのリソースレコード(例えば、A、MX、SRVなど)のリストを持ち、mDNSのマルチキャストグループに参加している。あるmDNSクライアントがPCの名前からそのIPアドレスを知りたい場合、mDNSクライアントは既定のマルチキャストアドレスに要求を送信する。すると対応するAレコードを持つPCがそのIPアドレスを含めて応答する。Systemの上に構築されている。アップルの製品、多くのネットワークプリンター、様々なサードパーティ製品や各種OS向けのアプリケーションで使われている。アップルの方式ではDNSメッセージを使用しているが、対抗しているマイクロソフトの方式であるSSDPではHTTPメッセージを使用している。DNSのSRVレコード、TXTレコード、PTRレコードを使いサービスインタフェース名を告知する。サービスを提供しているホストは利用可能なサービスの詳細(インスタンス、サービスの種類、ドメイン名、オプションの設定パラメータなど)を告知(出版)する。サービスの種類は先着順で簡単に登録されている。そのレジストリを保守・公表している。SafariブラウザやiChatインスタントメッセンジャーなどmacOSの多くのネットワーククライアントは手近のサーバを特定するのにDNS-SDを使っている。Windows上では、一部のインスタントメッセンジャーやVoIPでDNS-SDをサポートしている。Unix系やLinuxディストリビューションにもDNS-SD機能を備えたものがある。同社がAppleTalkからIPに方針転換したころである。いくつかのネットワーク機器ブランドで採用されている。運営委員会が管理している。SSDPはSOHO向けファイアウォール機器で多くサポートされており、ホストコンピュータがアプリケーションのためにファイアウォールに穴をあける。ホームシアターシステムとホストコンピュータ間のメディア交換にもSSDPが使われている。インターネット標準となったもので、ヒューレット・パッカードのネットワークプリンター、ノベルの製品、サン・マイクロシステムズの製品などで採用されている。API用のOpenSLP[7]等がある。Xにも搭載されていた。公表されるにとどまった[9]。仕様を情報RFCとして公表するようアップルに依頼した。してIETFのSVRLOCワーキンググループが公表した[10]。セキュリティ問題[編集]ユニキャストの信頼できるDNSがネットワーク全体を管理するモデルとは異なり、mDNSはなりすましによって情報を盗まれる危険性が高いと指摘されている。SNMPなどのネットワーク管理プロトコルと同様、mDNSを使ってそのネットワークの構成や個々のホストについて詳細情報が容易に得られるという問題もある[11]。v10.1とv10.2の間にSLPからmDNS/DNS-SDに変更した経緯があるが、macOSでのSLPサポートは続いている。Windows版はアップルのウェブサイトからダウンロードできる[13]。Avahi[編集]AvahiはLinuxとBSD向けのZeroconf実装である。ほとんどのLinuxディストリビューションに含まれており、デフォルトでインストールするものもある。連動して作動させるとホスト名解決機能を提供する[14]。AvahiにはBonjourおよび歴史的なmDNS実装であるHowlとのバイナリ互換性を提供するライブラリがあり、それらに対応したソフトウェアをAvahiを経由して利用することができる。マイクロソフト独自のLLMNR実装が含まれている。アドレス[編集]以下のような実装が利用可能である。どちらも1998年からリンクローカルアドレスをサポートしている。アップルはDarwinのbootpパッケージでオープンソース実装をリリースしている。Avahiのavahi-autoipdツールにはIPv4LLの実装が含まれている。IP)BusyBoxはIPv4LLの単純な実装を組み込み可能である。BusyBoxからのフォークであり、lladと呼ばれる若干異なるIPv4LL実装を提供している。以上の実装はいずれもスタンドアロンのデーモンまたはリンクローカルIPアドレスだけを扱うDHCPクライアント用プラグインである。既存または新規のDHCPクライアントもサポートするものとして次のものがある。uDHCPクライアント/サーバ向けのパッチを書いた[16]。LinuxおよびBSD向けのオープンソースのDHCPクライアントで、IPv4LLサポートを含んでいる。NetBSDには標準として含まれている。これらの実装では、ARP応答のブロードキャスト[17]や既存のネットワークコネクションが閉じられるといったカーネル問題には対処していない。2015年12月17日閲覧。