Kozupon.com    
 
 WINS(samba)と経路情報の設定!


目的:単純にルータ機能付き、WINSサーバを構築する。

構築環境:
OS)Debian Linux 5.0.3
機種)DELL DIMENSION D300
IPアドレス)192.168.0.14
ホスト名)winsrouter


1.OSのインストール
1)インストーラの起動
Debianのディスクをいれて、CD or DVD BOOTを行う。 [WINS(Samba)のインストール]
※ 画面に従って、操作を行うのみでOK!(詳細は割愛する)
このあとのWINS(SAMBA)の円滑な導入にあたり、導入するモジュールにデスクトップGUI環境のインストールを行う。

2)ネットワークの設定
デスクトップ環境にログイン後、画面上部にある[システム] → [ネットワーク]からネットワークカードの設定を行う。

[接続タブ eth0のプロパティ]
IPアドレス 192.168.0.14
サブネットマスク 255.255.255.0
デフォルトゲートウェイ 192.168.0.1

[全般 タブ]
ホスト名 winsrouter
ドメイン名 xxxxxxxxxxxx.co.jp

[DNS タブ]
DNSサーバ 192.168.0.4


2.WINSのインストールとセットアップ
1)インストール

画面上部にある[システム] → [アプリケーションの追加と削除]から[GADMIN-SAMBA]の導入を行う。

※WINSサーバは、ネットワークに接続されたホストの[NetBIOS名] と [IPアドレス名] と[ドメイン名]を解決する。
(機能的には[lmhosts]ファイルと同じです。

2)WINSの設定
画面上部にある[アプリケーション] → [システムツール]から[GADMIN-SAMBA]をクリックする

以下設定を変更した箇所のみ記述
Server Settings タブ

netbios name = winsrouter NetBIOSの名前 Windows ネットワーク上で表示される名前
server string =        DHCP3 & WINS Windows ネットワーク上で表示される説明
workgroup = hoge      Windows ネットワーク上でのグループ
wins support = yes     WINSサーバの使用の有無

他のタブについてはデフォルト設定のまま

設定終了後、[適応]をクリックし、[Active]ボタンをクリックすると起動する。その後、[Deactive)]ボタンを押し、一度終了する。

3)wins.datファイルの確認
終了後、wins.datファイルの作成が行われているかの確認を行う。
確認方法は画面上部の[アプリケーション] → [アクセサリ] → [端末]をクリックし、CUI画面を開く。

下記コマンドを入力し、wins.datファイルが開けることを確認する
# cat /var/lib/samba/wins.dat

4)sambaの起動
確認後、再度 sambaを起動する。
CUI画面から起動するには、管理者権限になり下記コマンドを実行する

# /etc/init.d/samba start

5)起動プロセスの確認
プロセスを確認するには下記コマンドを入力し、 結果
[nmbd]と[smbd]がそれぞれ表示されることを確認する。
ps -ef | grep nmbd | grep -v grep → nmbd

ps -ef | grep smbd | grep -v grep → smbd

6)wins.datファイルへの登録
クライアントにWINSの設定が行われると、[ホスト名](NetBIOS) , [IPアドレス] , [ドメイン名](ドメインコントローラーの場合)が
wins.datに登録する。(wins.datの更新は「nmbd」プロセス再起動時に行う。)

※ wins.datについて
[ホスト名](NetBIOS) , [IPアドレス] , [ドメイン名](ドメインコントローラーの場合)は、wins.datに下記のように登録する。
例として、

ホスト(NetBIOS名) hogeserver
IPアドレス 192.168.5.1
ドメイン名 hogehoge

の場合、

--------wins.dat--------
"MANAGER#1e" 1284206186 0.0.0.0 e4R
"MNGSERVER#03" 1284165049 192.168.7.2 64R
MNGSERVER#20 1284165049 192.168.7.2 64R
MANAGER#1b 1284165049 192.168.7.2 64R
MANAGER#00 1284206186 0.0.0.0 e4R
MNGSERVER#00 1284165049 192.168.7.2 64R
----------------------

"HOGESERVER#03" 1284165049 192.168.7.2 64R エントリ例詳細

"HOGESERVER#03" → NetBIOS名 lmhostsファイルと同じ文法で記述。NetBIOS名の前後は""で記述
1284165049 → TTL エントリの有効期限。 静的エントリでは0を指定する
192.168.7.2 → IPアドレス
64R → NetBIOSフラグ


3. 経路情報(ROUTING)の設定(192.168.0.xに接続された端末からの問い合わせ用)

1)パケット転送の有効化
/etc/sysctl.conf の設定を変更する。下記項目の「#」を解除する。
# vi /etc/sysctl.conf
net.ipv4.tcp_syncookies = 1
net.ipv4.ip_forward = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1

PCの再起動を行う。
下記コマンドを実行し、変更結果が有効になっているか確認する(1が表示されれば有効 )
# cat /proc/sys/net/ipv4/ip_forward
1
# cat /proc/sys/net/ipv4/tcp_syncookies
1
# cat /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
1
# cat /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
1


2)登録されている経路情報の確認
登録されている経路情報(ルーティングテーブル)を参照するには、コンソール画面で「route -n」コマンドを実行する。

カーネルIP経路テーブル (一般的な状態)
受信先サイト  ゲートウェイ  ネットマスク フラグ Metric Ref 使用数 インタフェース
192.168.0.0   0.0.0.0     0.0.0.0    U   0     0   0    eth0
0.0.0.0      192.168.0.1  0.0.0.0    UG  0     0   0    eth0

現状の登録されている経路情報に対して、各セグメント宛の経路情報の追加を行う。

3)経路情報の登録
192.168.0.0のネットワークからみた各ネットワークセグメントに対してのゲートウェイ。

ネットワークセグメント 192.168.1.0 192.168.3.0 192.168.5.0 192.168.7.0 192.168.8.0
ゲートウェイ 192.168.0.31 192.168.0.25 192.168.0.26 192.168.0.27 192.168.0.28

この情報をもとに、経路情報の登録を行う。経路情報の追加(削除)には「route add(del) コマンドを使用する。

経路情報の追加と削除の書式
追加 route add -net 受信先サイト netmask サブネットマスク gateway ゲートウェイアドレス

各ネットワークセグメントのゲートウェイの経路を登録する。
# route add -net 192.168.1.0 netmask 255.255.255.0 gateway 192.168.0.31
# route add -net 192.168.3.0 netmask 255.255.255.0 gateway 192.168.0.25
# route add -net 192.168.5.0 netmask 255.255.255.0 gateway 192.168.0.26
# route add -net 192.168.7.0 netmask 255.255.255.0 gateway 192.168.0.27
# route add -net 192.168.8.0 netmask 255.255.255.0 gateway 192.168.0.28

経路情報登録あとに「ROUTE -n」を実行する
受信先サイト  ゲートウェイ  ネットマスク   フラグ Metric Ref 使用数 インタフェース
192.168.1.0   192.168.0.31  255.255.255.0 UG  0    0   0    eth0
192.168.3.0   192.168.0.25  255.255.255.0 UG  0    0   0    eth0
192.168.5.0   192.168.0.26  255.255.255.0 UG  0    0   0    eth0
192.168.7.0   192.168.0.27  255.255.255.0 UG  0    0   0    eth0
192.168.8.0   192.168.0.28  255.255.255.0 UG  0    0   0    eth0
192.168.0.0   0.0.0.0      255.255.255.0 U   0    0   0    eth0
0.0.0.0      192.168.0.1   255.255.255.0 UG  0    0   0    eth0

登録を行った経路情報は、OSの再起動を行うと消えてしまうので、スクリプトファイルを作成し、OS起動時に自動起動させるようにする。

chmod コマンドでファイルに実行属性を与え、スクリプトファイルを実行可能な状態にする。
# chmod 755 router.sh

OS起動後、手動でスクリプトファイルを実行し、経路情報の確認を行う。

#!/bin/sh

route del -net 169.254.0.0 netmask 255.255.0.0 gateway 0.0.0.0
→ ネットワーク接続されていない時の経路情報

route add -net 192.168.1.0 netmask 255.255.255.0 gateway 192.168.0.31

route add -net 192.168.3.0 netmask 255.255.255.0 gateway 192.168.0.25

route add -net 192.168.5.0 netmask 255.255.255.0 gateway 192.168.0.26

route add -net 192.168.7.0 netmask 255.255.255.0 gateway 192.168.0.27

route add -net 192.168.8.0 netmask 255.255.255.0 gateway 192.168.0.28

route -n

作成したシェルスクリプトに問題なければ、起動時にこのシェルスクリプトも自動起動するようにrc.localファイル等へ組み込む。

4)経路情報の確認
OS起動後、手動でスクリプトファイルを実行し、経路情報の確認を行う。
スクリプトファイルに問題なければ、起動時に読み込むように組み込みを行う。

以上


 
 
 



Copyright 2010 Kozupon.com.