Solarisネームサービス

/etc/hosts (/etc/inet/hosts)ファイルは、IPv4のアドレスが格納されています。このファイルはローカルデータベースとして、ホスト名をIPv4アドレスに関連付けます。

/etc/inet/ipnodesファイルは、IPv4とIPv6のアドレスが格納されています。このファイルはローカルデータベースとして、ホスト名をIPv4アドレスやIPv6アドレスに関連付けます。

現在のネットワークアドレスの表示

ホストのネットワーク・インタフェースをすべて表示するには、-aオプションを指定してifconfigコマンドを実行します。

ifconfig [-a] [interface]
interface
表示するインタフェースを指定する。

すべてのネットワーク・インタフェースを表示する例を次に示します。

$ ifconfig -a
lo0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
eri0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 202.217.161.204 netmask ffffff00 broadcast 202.217.161.255

インタフェース名とフラグの一覧が出力されます。なお、lo0 はループバック用のインタフェースです。

flags
設定されているフラグが16進数と文字列で出力されます。
flags
flag 意味
UP 起動中
LOOPBACK ループバック
IPv4 Internet Protocol Version 4
mtu
MTU (Maximum Transmission Unit) は、1回の転送で送信できるIPパケットの最大データサイズです。
inet
IPアドレス
netmask
サブネットマスク
broadcast
ブロードキャストアドレス

インタフェース名を指定することもできます。

$ ifconfig eri0
eri0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 202.217.161.204 netmask ffffff00 broadcast 202.217.161.255

インタフェースの起動と停止

ホストのネットワーク・インタフェースの追加と削除を行うには、スーパーユーザーの権限が必要です。

インタフェースを起動するには、upオプションを指定してifconfigコマンドを実行します。

ifconfig interface up
interface
起動するインタフェースを指定する。

インタフェースを停止するには、downオプションを指定してifconfigコマンドを実行します。

ifconfig interface down
interface
停止するインタフェースを指定する。

停止したネットワーク・インタフェースは使用不可能になります。つまり、通信が行えなくなります。telnet でリモート・ログインして作業している場合は注意が必要です。

ネットワーク・インタフェースを停止することで、擬似的にネットワーク障害を起こして通信を不可能にすることができます。

論理インタフェースの追加と削除

物理インタフェースに対して複数の論理インタフェースを追加することができます。これにより、ひとつのNICで複数のIPアドレスを持つことができます。論理インタフェースの追加と削除を行うには、スーパーユーザーの権限が必要です。

論理インタフェースを追加するには、まずplumbオプションを指定してifconfigコマンドを実行します。

ifconfig インタフェース名 plumb

論理インタフェースの場合、インタフェース名は、「物理インタフェース名:番号」という形式になります。

次に、論理インタフェースにIPアドレスとサブネットマスクを設定します。

ifconfig インタフェース名 IPアドレス netmask サブネットマスク

最後に、インタフェースを起動します。

eri0という物理インタフェースに対してeri0:1という論理インタフェースを追加する例を次に示します。

# ifconfig eri0:1 plumb
# ifconfig eri0:1 192.168.1.1 netmask 255.255.255.0
# ifconfig eri0:1 up

論理インタフェースを削除するには、まずインタフェースを停止してから、unplumbオプションを指定してifconfigコマンドを実行します。

ifconfig インタフェース名 unplumb

eri0:1という論理インタフェースを削除する例を次に示します。

# ifconfig eri0:1 down
# ifconfig eri0:1 unplumb