いちばん失敗した人決定戦

linuxのネットワーク設定についてお尋ねいたします。

社内のイントラネット環境において、サーバルーム内のネット老朽化にともない、新規のネットワークを新設しました。(図中の赤線:192.168.10.0/24)
諸々の事情があり、従来使っていたIP体系(図中の黒線:192.168.1.0/24)とは別になりました。

その新規ネット上に、老朽化によりリプレースで新設するRedHut Enterprise linuxのDBサーバ設置し切り替えタイミングを待っている状態です。
このサーバにはもちろん新規ネットのIP(192.168.10.10)を割り振り、ゲートウェイもそのIP系のもの(192.168.10.1)を割り振ります。

しかし、リプレース前のDBサーバのクライアントは多数あり、また名前解決する仕組みでもないため、1台ずつ接続先アドレスを変更する必要があります。

本社は原則24時間操業かつ一斉にクライアントPCを停止できないので、限られた操業停止時間内ではサーバリプレースするので手一杯で、全クライアントPCの設定変更をする時間的余裕がありません。

そこで、サーバにあるLANポート2つを使って、1つは新規ネットのIP(前述)を設定し、もう1つは従来のネットのIP(192.168.1.10)を設定し、どちらでもDB接続可能な状態にして、クライアントPCの設定は順次切り替えていこうと考えました。

しかしLANポートが複数あってもデフォルトゲートウェイの設定は一つしか持てないはずです。しかし逆を言えばデフォルト以外のゲートウェイ設定(?)とかを工夫すれば上の目的を達成できるのではないでしょうか?

linux,Unixには疎いものですから、これを実現する設定について教えて頂けませんでしょうか?

どうぞよろしくお願い致します。

A 回答 (3件)

絵が見えないので文面からの判断ですが、ルーティングを書けばいいのでは?



コマンドラインだと、
route addd -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 #最後はgwのアドレス

起動時に反映させたければ、/etc/sysconfig/static-routes に下記の通り書いておく。
any net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1

ルーティングテーブルの確認は、コマンドラインから
netstat -rn

この回答への補足

図が見えないのでわからなかったと思いますが、今回、クライアントの存在するネットが192.168.3.0/24となります。このネットのゲートウェイは192.168.3.1です。

ここに存在するクライアントの一部はサーバの新IP192.168.10.10に通信してくるのですが、設定変更の間に合わないものは旧IP192.168.1.10に通信してくることになります。

つまり受信するインタフェースとしては192.168.10.10と192.168.1.10の両方になります。

試しに、デフォルトゲートウェイだけを設定した状態で、192.168.3.0/24のネットから192.168.10.10にecho要求したら問題なくecho応答を確認できたのですが、192.168.1.10にecho要求したらタイムアウトになりました。

サーバ側ではどちらの場合もecho要求は届いているのですが、192.168.1.10からはecho応答ができないようでした。これで困ってしまい質問した次第です。

このような場合は、
route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.10.1
このようにルーティング設定すればよいのでしょうか?

補足日時:2011/07/10 02:37
    • good
    • 0
この回答へのお礼

図面が見えないのに回答下さっておありがとうございます。

理解できていない点を補足入力させていただきますので、よろしければ引き続き回答ねがいます。

お礼日時:2011/07/10 02:05

> また図が見えないので理解してもらえなかったと思いますが、インタフェース192.168.10.10と192.168.1.10は別々のネットワークになります。

したがって一つのLANカードではルータが受信パケットをきちんと届けてはくれないと思います。

LANカード複数枚だろうが1枚だろうがルータはパケットを届けてくれます。
1台のコンピュータで10のサイトをホスティングする事だって珍しくありません。

理解してないという事ではありませんよ。

NIC複数枚のコンピュータが故障して代替機でサービスする時にNIC一枚のコンピュータしかすぐには用意できなくたってサービスを続けることはできるので知っておいて良いのでは程度の知識です。

複数枚のNICと全く同じに使えるわけではありませんが、かなりの部分代替可能ですし、実際使われてます。

この回答への補足

>理解してないという事ではありませんよ。

大変失礼いたしました。

>http://www.itmedia.co.jp/help/tips/linux/l0494.h …

・上のURLでは同じサブネットのIPを設定してあった。
・ルータにおいて192.168.10.0/24と192.168.1.0/24は別々のインタフェースにルーティングさせる設定にしている実情がある。
という点から192.168.1.10へのパケットは届かないと思いこんでおりました。

さっそく試させていただきます。

貴重な情報ありがとうございました(^^)

お礼入力のほうは、動作確認後に改めて入力させていただきます。

補足日時:2011/07/11 09:45
    • good
    • 0
この回答へのお礼

検証を行った結果をご報告させていただきます。

残念ながら、やはりルータ側のルーティング設定によってパケットが届かない状態だと思われ、追加したIPとは通信できませんでした。

何度も回答くださり、とてもありがたく思っております。

他にもなにか良い案があれば教えていただければ幸いです。

お礼日時:2011/07/11 12:12

LANカード1枚でも別名付ければできます。



http://www.itmedia.co.jp/help/tips/linux/l0494.h …


単純にDBサーバとクライアントという事なら、何も問題ないかと思います。

デフォルトゲートウェイって話がでてきたので192.168.10/24も192.168.1/24もサーバ介して内外にアクセス必要という事ならIPフォワード機能を有効化する必要があるかも知れません(下記ページ)。

http://www.itmedia.co.jp/help/tips/linux/l0097.h …
    • good
    • 0
この回答へのお礼

まずは図が見えない状態での回答ありがとうございます。

また図が見えないので理解してもらえなかったと思いますが、インタフェース192.168.10.10と192.168.1.10は別々のネットワークになります。したがって一つのLANカードではルータが受信パケットをきちんと届けてはくれないと思います。

しかしながら1枚のLANカードに複数のIP割り当てができるとは知りませんでした。ありがとうございます。

またIPフォワーディングについては非常に役に立ったと思います。

今回、192.168.10.10とクライアントの通信はできるのに、192.168.1.10で受信した通信に対しては応答ができないという現象がでていて、これが質問にいたる要旨でした。

IPフォワーディング機能が無効になっていたためにデフォルトゲートウェイ設定していたインタフェース192.168.10.10から返答できなかったのかもしれないと思いました。

この設定を有効にして再度検証してみます。その上でまたわからないことがあれば補足で質問追記したいと思いますので、よろしければ引き続き回答くださいますようよろしくお願いいたします。

お礼日時:2011/07/10 03:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!