logo Technical Power
HOME | Index | Blog | BBS | About
ipalias
ipaliasとは
Linuxの場合
参考文献
ipaliasとは
ネットワークインターフェースに複数のIPを持たせる機能です
1つの主となるIPに、違うIPを乗せていく感覚になります。

メリットとしては、以下のものがあります。

  1. サービス競合を回避
  2. 1つのインターフェースで、異なるネットワークへルーティング
主に、1.サービス競合の回避に使われます。

例えば、djbdns では 192.168.1.10:udp 53 を2つの別プログラムで
同時利用する事はできません。

こういう時にipaliasは非常に有用です。

192.168.1.20:udp53 / 192.168.1.21:udp53 と別IPを利用する事で競合を回避出来ます。
ApacheでVirtualHostを利用して、SSLを使う際によく使う手です。

FreeBSDは設定方法としては、ifconfig 、/etc/rc.conf の2つの方法があります。
Linuxの場合はこちら。Linuxの場合
ifconfig
ifconfig、/etc/rc.conf の2つの方法があります。
ifconfigでipaliasを設定するには、まず以下の情報を取得します。

・interface card のデバイス名
・現在利用しているIPアドレス


ifconfig を利用して、現在のInterfaceの情報を取得します。
# ifconfig rl0: flags=8843 <UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.1.20 netmask 0xffffff00 broadcast 192.168.1.255 ether 00:07:40:31:d6:1c media: Ethernet autoselect (100baseTX <full-duplex>) status: active lo0: flags=8049 <UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3 inet 127.0.0.1 netmask 0xff000000


rl0 に ipalias を設定するためには、以下のようにします。
rl0 に 192.168.1.21 を追加する # ifconfig rl0 ip 192.168.1.21 netmask 255.255.255.255 alias rl0 の 192.168.1.21 を取り消す # ifconfig rl0 ip 192.168.1.21 netmask 255.255.255.255 -alias
point ipalias の netmask は 必ず 255.255.255.255 (FFFFFFFF) にする必要があります。
間違って主IPのネットマスク 255.255.255.0 をつけないようにしてください。
ipalias を設定し、interface の確認
# ifconfig rl0: flags=8843 <UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.1.20 netmask 0xffffff00 broadcast 192.168.1.255 inet 192.168.1.21 netmask 0xffffffff broadcast 192.168.1.21 ether 00:07:40:31:d6:1c media: Ethernet autoselect (100baseTX <full-duplex>) status: active
rc.conf
ifconfig の場合は、リブートなどすると再度設定しなければなりません。
/etc/rc.conf に記述しておけば boot時 に設定されます。(ipalias の再設定の必要が無くなります)


/etc/rc.conf に以下の設定をします。(一部省略)
defaultrouter="192.168.1.254" hostname="your.example.com" ifconfig_rl0="inet 192.168.1.20 netmask 255.255.255.0" ifconfig_rl0_alias0="inet 192.168.1.21 netmask 255.255.255.255" ifconfig_rl0_alias1="inet 192.168.1.22 netmask 255.255.255.255" 複数IPを利用するなら、aliasの後ろの数字を変える
Linuxの場合
Linux の場合は、各distributionによって設定ヶ所が違います。
詳細はgoogleにてお願いします。


基本的にはifconfigで設定が可能です。

即時反映の方法は以下の通りです。
device名 の後ろに :0 のように数字を付けます。

eth0 は 192.168.1.20 # ifconfig eth0:0 192.168.1.30 追加1 # ifconfig eth0:1 192.168.1.31 追加2 # ifconfig eth0:2 192.168.1.32 追加3

続いてルートの設定で完了。
eth0 は 192.168.1.20 /sbin/route add -host 172.16.1.30 dev eth0:0 /sbin/route add -host 172.16.1.31 dev eth0:1 /sbin/route add -host 172.16.1.32 dev eth0:2

リブートした時に反映されているようにするには、eth0の設定を変更します。
大抵、locate eth0 で何処にあるか検討がつきます。

redhat では, /etc/sysconfig/network-scripts/ifcfg-eth0
debian(GLANTANK)では, /etc/network/interface

など、様々なようです。
参考文献
特になし。強いて言えば jman ifconfig
 日本語オンラインマニュアル作成者に感謝。

Linux ipalias: Setting up IP Aliasing on A Linux Machine Mini-HOWTO http://www.linux.or.jp/JF/JFdocs/IP-Alias/commands.html
HOME | Index | Blog | BBS | About
Copyright (c) 2006 Technical Power http://www.xa10.com