« Explore2fs | メイン | なか卯の食べ始め »

2006年02月04日

CentOS で複数の IP アドレスを設定する

サーバの故障で、すぐに代替ハードを準備できないときは、他の稼働中のサーバにリダイレクトするのが最も得策だと言えます。もちろん、ロードバランサなどを使っているのなら別ですが。

news.ceek.jp 219.117.219.155(以下 155) のサーバが故障して 219.117.219.154(以下 154) のサーバにリダイレクトしたいと考えたとき、まずは、 news.ceek.jp の DNS 情報を書き換えるのが思い浮かぶ。しかし、通常は DNS の TTL を大きめに与えているから、すぐに IP アドレスの変更を反映させるのは難しい。

少し考えたところ、リダイレクト先のサーバである 154 に 155 のアドレスを振ればいいことに気がつきました。そうすれば、アクセスする側は 155 にアクセスしても 154 のサーバに接続させることが出来る。

$ ifconfig eth0:0 219.117.219.155 netmask 255.255.255.248 broadcast 219.117.219.159

154 のサーバで root になって、以上を実行すればいい。インターフェイス eth0 に IP アドレスの設定を追加しているわけです。自分の環境でやる場合は、適切な値で…

これで、サーバが故障しても、とりあえず故障中のメッセージは出せました。もちろん、同じネットワーク内で複数のサーバを動かしている場合しか出来ないわけですが。そんな個人は多いんですかね?企業だったら、代替ハードを準備しているだろうし。

復旧した news.ceek.jp も、実際は 219.117.219.156 で動いています。 /etc/rc.d/rc.local というファイルに書いておけば、起動したときに自動実行されるので便利ですよ。

DNS の TTL に関してついでに。

サーバの移転を検討している場合は、事前(1週間ほど前)に TTL を短くしておくといいです。 TTL というのは DNS のキャッシュ保持期間ですね。事前に短い値にしておけば、情報の変更が早く反映されるはずです。

【関連情報】
・Linux で複数の IP アドレスを割り当てる
 http://www.redout.net/data/ifconfig.html

2006年02月04日 20:34 | Technology

トラックバック

コメント