|
図2 Windowsにおける名前解決の手順
開始 |
|
|
↓ |
|
|
|
|
ホスト名が15文字より長い or ピリオドが含まれている |
Yes→ |
[Microsoft
TCP/IPのプロパティ] ダイアログボックスの 「Windows名前解決にDNSを使う」 チェックボックスが オンにされているか (Win9x/Meは常にNo) |
No→ |
解決失敗 |
No |
|
↓Yes |
|
|
↓ |
|
DNS照会 |
成功→ |
IPアドレスが戻る |
↓ |
|
↓失敗 |
|
|
ノードの選択 |
|
|
↓ |
|
|
|
|
|
|
hノード |
No→ |
pノード |
No→ |
mノード |
No→ |
bノード |
↓Yes |
|
↓Yes |
|
↓Yes |
|
↓Yes |
NetBIOSネームキャッシュ |
↓失敗 |
|
↓失敗 |
|
↓失敗 |
|
↓失敗 |
WINSサーバ照会 |
|
ブロードキャスト |
↓失敗 |
|
失敗 |
|
↓失敗 |
|
失敗 |
ブロードキャスト |
|
↓ |
|
WINSサーバ照会 |
|
↓ |
↓失敗 |
|
↓ |
|
↓失敗 |
|
↓ | |
|
|
|
|
|
|
成功→ |
IPアドレスが戻る |
|
|
成功→ |
IPアドレスが戻る |
|
|
成功→ |
IPアドレスが戻る |
|
| |
最終処理 |
|
|
|
↓ |
|
|
|
Windows NT/2000である |
|
|
↓Yes |
|
↓No |
|
|
[Microsoft
TCP/IPのプロパティ] ダイアログボックスの 「LMHOSTS参照を行う」 チェックボックスが オンにされているか |
Yes→ |
LMHOSTSファイル確認 |
成功→ |
IPアドレスが戻る |
↓No |
|
↓失敗 |
|
|
[Microsoft
TCP/IPのプロパティ]ダイアログボックスの 「Windows名前解決にDNSを使う」 チェックボックスがオンにされているか (Win9x/Meは常にNo) |
No→ |
解決失敗 |
↓Yes |
|
|
HOSTSファイル確認 |
成功→ |
IPアドレスが戻る |
↓失敗 |
|
|
DNS照会 |
成功→ |
IPアドレスが戻る |
失敗→ |
解決失敗 |
図中のノードタイプとは
- B-Node(Broadcast:1)
ブロードキャストのみを使って名前解決
- P-Node(PointToPoint:2)
WINS,DNS,LMHOSTSのみを使って名前解決
- M-Node(Mixed:4)
ブロードキャスト→WINS,DNS,LMHOSTSを使って名前解決
- H-Node(hybrid:8)
WINS,DNS,LMHOSTS→ブロードキャストを使って名前解決
- Microsoft拡張
標準のノードに加え、ローカルLMHOSTSファイル、またはWINSプロキシとWindows Sockes
gethostbyname()関数の呼び出しの組み合わせを用います。
- Windows Sockes gethostbyname()関数は、標準DNSとローカルHOSTSファイルを使用します。
ノード・タイプは「winipcfg」コマンドまたは「ipconfig /all」コマンドで確認可能です。
変更は以下のレジストリで行うことができます。
Windows9x/Me \\HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\SERVICES\VXD\MSTCP\NodeType
WindowsNT \\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters\NodeType
既定値は
- If DHCP=False, and WINS is disabled, then NodeType=1 (bnode)
- If DHCP=False, and WINS is manually set, then NodeType=8 (hnode)
- If DHCP=True, and DHCP sets WINS, then NodeType=4 (mnode)
- If DHCP=True, and WINS is manually set, then NodeType=8 (hnode)
- If DHCP=True, and WINS is disabled, then NodeType=1 (bnode)
WINS Proxy
NetBIOS 名前解決要求ブロードキャストを受け取るとp(peer)ノード照会としてWINSサーバに転送し、その答えを要求元に返すノード。
NT4をWINS Proxyにするには HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters のEnableProxy
の値 を 1にする。
Win95をWINS
Proxyにするには HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD\MSTCP のEnableProxy
の値 を 1にする。
SambaをWINS Proxyにするには smb.confでwins proxy=yesとする
Samba-JP メーリングリストおよび森永真二郎氏による提供です。
小田切 耕司 http://www.samba.gr.jp/
戻る
|