忍者ブログ

ブランクがあるインフラエンジニアの備忘録

サーバ構築のメモ

ブラウジングと名前解決(NetBIOS、WINS)

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

ブラウジングと名前解決(NetBIOS、WINS)

◆NetBIOSとは?
 最大16ビットの名前で、伝統的なWindowsネットワークではNetBIOSの名前によって通信先の指定が行われており、NetBIOSの名前解決機構としてWINSサーバーが提供されている。最大16バイトの名前で、16バイト目は名前の用途を示すNetBIOSの識別子として用いられれる為、実際は最大15バイトになる。15バイトに満たない場合は15バイト目までスペース文字(0x20)で詰められます。小文字を使うことも可能ですが、内部的には大文字と同一視される。

・パラメータ設定例
netbios name = SambaServer_3

 コンピューター名が「 LENOVO-B42Y」で、NetBIOSの識別子が「20」というNetBIOS名は、通常「 LENOVO-B42Y<20>」のような形式で表記されます。(nmblookupコマンドの実行例を参照)

◆NetBIOSの名前解決


 最初にNetBIOSネームキャッシュによる名前解決が行われます。NetBIOSネームキャッシュの操作を行うコマンドとしてnet cache コマンドがあります。
 ネットワーク上の各マシンでは、Bノード、Hノードといったノードタイプを設定することで、ブロードキャストとWINSサーバーへの問い合わせの順序や問い合わせ自体を実行するかどうかを制御できます。WINSサーバーが設定されていない場合は自動的にBノードになります。

・ノードタイプと動作(重要。各ノードの違いを理解する)
ノードタイプ  識別子  動作
Bノード 0x1 ブロードキャストのみで名前解決を実施
Pノード 0x2 WINSサーバーへの問い合わせのでみ名前解決を実施
Mノード 0x4 ブロードキャストの後、WINSサーバーへ問い合わせ
Hノード 0x8 WINSサーバーへ問い合わせた後、ブロードキャスト


 引き続きlmhostファイルによる名前解決が行われます。このファイルはホスト名の解決に使われるhostsファイルと同様の位置づけで、IPアドレスと対応するNetBIOS名を設定します。
 最後にNetBIOS名をホスト名とみなして、DNS、hostsファイルを使った名前解決が実施されます。

◆name resolve orderパラメータ
 Sambaでは、使用する名前解決機構とその順序を制御する為にname resolve orderというパラメータが用意されています。

・name resolve orderパラメータのデフォルトの設定
name resolve order = lmhosts wins host bcast

・name resolve orderのキーワード(重要。パラメータの引数の意味について理解する)
キーワード  説明
lmhosts lmhostsファイルを用いた名前解決
wins win serverパラメータで指定したWINSサーバーによる名前解決
host ホスト名の名前解決機構(DNS、hostsファイル、NIS等)を用いた名前解決
bcast ブロードキャストを用いた名前解決


◆WINSサーバー
 NetBIOSの名前解決におけるDNSサーバーのような存在。SambaをWINSサーバーとして必要なことは以下の設定をするだけです。なお、WINSの情報はwins.datに格納されます。

[global]
wins support =yes   #デフォルトはno

《注意》
WINSサーバーを指定するwins serverパラメータとWINSサーバー機能を有効化するwins supportパラメータと混合しないように注意。

〇WINSサーバーの複製設定
以下の様な内容のファイル(ファイル名仮にwinspartner.txt)を作成。

$ vi winspartner.txt
dn: CN=WINSERVER,CN=PARTNERS
objectClass: wreplPartner
address: 192.168.1.10

$ cat winspartner.txt | ldbadd -H wins_config.ldb -a #ldbaadコマンドを使って、wins_config.ldbファイルに追記
Added 1 records successfully

$ systemctl restart smbd     #sambaのリスタートで設定が有効化。

◆ホスト名の名前解決にNetBIOS名の名前解決機構を使用する
 以下設定例

$ vi /etc/nsswitch.conf
hosts: files dns wins


◆nmblookupコマンド
 名前解決照会に使うnslookupによく似たNetBIOS名機構用の名前解決を行うことが出来るnmblookupというコマンドがあり、これを使ってNetBIOS名前解決のデバッグや確認が可能。

【書式】nmblookup [-M] [-R -U WINSサーバーのIPアドレス] NetBIOS名
    nmblookup -A IPアドレス

・nmblookupの主なオプション

オプション   説明
-M マスターブラウザを検索する
-R 問い合わせパケット中の再起検索フラグを設定する
-A IPアドレス IPアドレスで指定されたマシンが登録しているNetBIOS名の一覧とMACアドレスを出力する
-U ユニキャストアドレス      問い合わせ先のユニキャストアドレスを指定する。WINSサーバーへの問い合わせを行う際などに使用する。

# nmblookup -A 10.0.1.1
Looking up status of 10.0.1.1
        LENOVO-B42Y     <20> -         M <ACTIVE>     #コンピューター名
        LENOVO-B42Y     <00> -         M <ACTIVE>
        WORKGROUP       <00> - <GROUP> M <ACTIVE>  #WORKGROUP名
        MAC Address = 0A-00-27-00-00-06
        MAC Address = 08-00-27-C7-71-3E


◆ブラウジング機能
 Windowsで「ネットワーク」を開くと、コンピューターやワークグループ一覧が表示される。この一覧はブラウザという役割のコンピューターが保持するブラウザリストという一種の簡易データベースから取得されています。
 ブラウザにはマスターブラウザバックアップブラウザがあり、マスターブラウザは、ブラウザリストのマスターを維持し、ブラウザとしてサービスを提供します。マスターブラウザと同じワークグループに所属する同一IPサブネット内の各マシンは、定期的にホストアナウンスメント(ローカルアナウンスメント)というブロードキャスト通信を行い、自身の存在をマスターブラウザに通知します。マスターブラウザは各IPサブネットのワークグループごと、あるいはドメインごとに一台ずつ必要。
 バックアップブラウザは、マスターブラウザから定期的にブラウザリストの情報を受け取り、ブラウザとしてのサービスを提供します。

◆ブラウザ選定
・マスターブラウザの基本的な優先度
OS 優先度
Samba 0~255
ドメインコントローラー  32
ドメインコントローラー以外のWindowsNT系マシン 16
ファイルサーバー機能を有効化しているWindows9X 系マシン 1
ファイルサーバー機能を無効化しているWindows9X 系マシン  -(マスターブラウザになれない)

数字が高いほど優先度が高い。通常はドメインコントローラーがマスターブラウザになる。
しかし、Sambaに関しては「os level」パラメータ値でこれを変更できる。例えば「os level = 33」に設定すればドメインコントローラーよりも優先度が高くなり、必ずマスターブラウザになることも、逆に「os level = 0」に設定することで優先度を裁定にする事も可能。又、以下のコマンドで、強制的にブラウザ選定を行うことも出来る。

# smbcontrol nmbd force-election


◆Sambaのブラウジング機能設定
・Sambaのブラウジング機能関連の主なパラメータ
パラメータ デフォルト 説明
workgroup WORKGROUP  所属するワークグループ
local master yes ブラウザ選定に参加するかどうか
os level 20 基本的な優先度
peferred master auto 優先マスターブラウザとなるかどうか
domain master auto ドメインマスターブラウザとなるかどうか


・smb.comf設定例
workgroup = WORKGROUP
os level = 20
local master = yes
preferred master = auto
domain master = auto

・ブラウザリストの出力
 定期的にbrowse.datというファイルに書き込まれている。nmbdにHUPシグナルを送信することで、強制的にこのファイルへの書き込みを行うことも出来る。

・ドメイン構成なしに、別IPサブネット上に自ホストを表示させる設定例
[global]
remote announce = 192.168.2.255/HOME #192.168.2.0/24というサブネット上にHOMEワークグループのマスターブラウザが存在していれば、HOMEワークグループのコンピューター一覧に、該当のSambaマシンも表示される。


◆Sambaのブラウジング関連コマンド
・smbclient -Lコマンド
 smbclient -Lコマンドは、指定したマシンの共有一覧を表示します。
【書式】smbclient [-I IPアドレス] -L コンピューター名

# sudo smbclient -L pro
Password for [NORA\root]:
Anonymous login successful
        Sharename       Type      Comment
        ---------       ----      -------
        print$          Disk      Printer Drivers
        tmp             Disk
        IPC$            IPC       IPC Service (Samba 4.19.4)
SMB1 disabled -- no workgroup available



・findsmbコマンド

 nmblookup及びsmbclientコマンドのラッパーとして、特定のIPサブネット内にあるNetBIOSが有効なマシンの一覧を列挙します。

【書式】findsmb [ブロードキャストアドレス]


・smbtreeコマンド
 smbtreeコマンドはブラウジング機能を使ってIPサブネット内のドメイン、ワークグループや所属するマシンの情報などをツリー形式で表示します。

【書式】smbtree -N

・例題
問題集126~128頁問1~11
NetBIOSとWINS - Linux技術者認定 LinuC | LPI-Japan
NetBIOSとWINS - Linux技術者認定 LinuC | LPI-Japan
NetBIOSとWINS - Linux技術者認定 LinuC | LPI-Japan
Sambaの概念とアーキテクチャ - Linux技術者認定 LinuC | LPI-Japan
PR

コメント

プロフィール

HN:
のらくら
性別:
非公開
自己紹介:
介護と自身の手術でブランクが出来たインフラエンジニアの学習メモ。VirtualBOXで仮想サーバーを建て、GNS3でCiscoルーター&スイッチによるネットワークのエミュレーションもしています。GNS3ネットワーク内に仮想サーバーと連携させて、実際のネットワーク環境におけるサーバーをシミュレートする他、LinuC level3 300の対策もしています。

P R