【CentOS6】アドレス複数設定(IPv4、IPv6)

CentOS6.5で、一つのインターフェースにアドレスを複数設定したい場合、「ARIES」で簡単に設定ができます。

今までは、サブインタフェース(ifcfg-eth0:1)の様な物を作成していたのですが、最近では、サブインターフェースを作成しなくても、「ifcfg-eth0」ファイル一つで複数のアドレスを設定することが可能です。

ARIESコマンドを使用した複数アドレスの設定

設定は特に難しいところはありません。
IPv4アドレスを設定する際は、2番目のアドレスを「IPADDR2」として設定します。

IPv6アドレスは「IPV6ADDR_SECONDARIES」を用いて設定します。

IPv6をさらに設定する際は以下のようにスペース区切りで設定しましょう。

IPV6ADDR_SECONDARIES="2000:xxxx::1/64 2000:xxxx:2::1/64"

複数アドレス設定例

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ENGINE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=1.1.1.1
NETMASK=255.255.255.0
IPADDR2=1.1.1.2
NETMASK2=255.255.255.0
PREFIX=26
IPV6ADDR=2000:ffff::1/64
IPV6ADDR_SECONDARIES=2001:ffff::2/64
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes       #IPv6を使用するかどうか
IPV6INIT=yes
IPV6_AUTOCONF=no
ARPCHECK=no

設定が終わったら、ネットワーク再起動をします。

service network restart

ifconfig -aではIPv4が複数作成されたことが確認できないので、以下コマンドで確認しましょう。

# ip addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:50:56:89:76:1e brd ff:ff:ff:ff:ff:ff
    inet 1.1.1.1/24 brd 1.1.1.254 scope global eth0
    inet 1.1.1.2/24 brd 1.1.1.254 scope global secondary eth0
    inet6 2000:ffff::1/64 scope global
       valid_lft forever preferred_lft forever
    inet6 2000:ffff::2/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe89:761e/64 scope link
       valid_lft forever preferred_lft forever

設定したアドレスがそれぞれ疎通確認できることを確認できれば成功です。

# ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
64 bytes from 1.1.1.1: icmp_seq=1 ttl=64 time=0.038 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=64 time=0.033 ms
^C
--- 1.1.1.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1445ms
rtt min/avg/max/mdev = 0.033/0.035/0.038/0.006 ms

# ping 1.1.1.2
PING 1.1.1.2 (1.1.1.2) 56(84) bytes of data.
64 bytes from 1.1.1.2: icmp_seq=1 ttl=64 time=0.028 ms
64 bytes from 1.1.1.2: icmp_seq=2 ttl=64 time=0.034 ms
^C
--- 1.1.1.2 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1476ms
rtt min/avg/max/mdev = 0.028/0.031/0.034/0.003 ms


# ping6 2000:ffff::1
PING 2000:ffff::1(2000:ffff::1) 56 data bytes
64 bytes from 2000:ffff::1: icmp_seq=1 ttl=64 time=0.029 ms
64 bytes from 2000:ffff::1: icmp_seq=2 ttl=64 time=0.046 ms
^C
--- 2000:ffff::1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1471ms
rtt min/avg/max/mdev = 0.029/0.037/0.046/0.010 ms


# ping6 2000:ffff::2
PING 2000:ffff::2(2000:ffff::2) 56 data bytes
64 bytes from 2000:ffff::2: icmp_seq=1 ttl=64 time=0.027 ms
64 bytes from 2000:ffff::2: icmp_seq=2 ttl=64 time=0.046 ms
^C
--- 2000:ffff::2 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1710ms
rtt min/avg/max/mdev = 0.027/0.036/0.046/0.011 ms
#

以上です。




エンジニアのオンライン学習

ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。

おすすめオンライン教材
自宅で学習ができるオンラインスクール

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。



ABOUT US
げんき☆ひろき
インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!