Solaris のシステム管理 (IP サービス)

個々のネットワークインタフェースの管理

Oracle Solaris のインストール後に、次の目的でシステム上のインタフェースを構成、管理する場合があります。

この節では、Solaris 10 1/06 リリース以降での個々のネットワークインタフェースの構成について説明します。次のいずれかのグループに含めるインタフェースを構成する方法については、次の節を参照してください。

Procedureインタフェースの状態を取得する方法

Solaris 10 1/06 以降、この手順では、システム上で現在使用可能なインタフェースとそれらの状態を調べる方法について説明します。この手順では、現在 plumb されているインタフェースを表示する方法も示します。以前の Solaris 10 3/05 リリースを使用している場合は、「特定のインタフェースに関する情報を入手する方法」を参照してください。

  1. インタフェースがあるシステムで、Primary Administrator の役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Solaris のシステム管理 (基本編)』の第 2 章「Solaris 管理コンソールの操作 (手順)」を参照してください。

  2. 現在システムにインストールされているインタフェースを調べます。


    # dladm show-link
    

    この手順で使用する dladm コマンドの詳細は、dladm(1M) のマニュアルページを参照してください。このコマンドは、それらのインタフェースが現在構成されているかどうかに関係なく、検出したすべてのインタフェースドライバについて報告します。

  3. システム上で現在 plumb されているインタフェースを調べます。


    # ifconfig -a
    

    ifconfig コマンドには、インタフェースを plumb する機能など数多くの追加の機能があります。詳細については、ifconfig(1m) のマニュアルページを参照してください。


例 6–1 dladm コマンドを使用したインタフェースの状態の取得

次の例は、 dladm コマンドによる状態の表示を示しています。


# dladm show-link
ce0             type: legacy    mtu: 1500       device: ce0
ce1             type: legacy    mtu: 1500       device: ce1
bge0            type: non-vlan  mtu: 1500       device: bge0
bge1            type: non-vlan  mtu: 1500       device: bge1
bge2            type: non-vlan  mtu: 1500       device: bge2
 

dladm show-link の出力は、ローカルホストで 4 つのインタフェースドライバが使用可能であることを示しています。ce インタフェースと bge インタフェースは、どちらも VLAN 用に構成できます。ただし、リンク集積で使用できるのは、非 VLAN タイプの GLDV3 インタフェースのみです。

次の例は、ifconfig -a コマンドによる状態の表示を示しています。


# ifconfig -a
 lo0: flags=2001000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu
8232 index 1
         inet 127.0.0.1 netmask ff000000  
ce0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4>mtu 1500 index 3
         inet 192.168.84.253 netmask ffffff00 broadcast 192.168.84.255
        ether 0:3:ba:7:84:5e  
bge0: flags=1004843 <UP,BROADCAST,RUNNING,MULTICAST,DHCP,IPv4>mtu 1500 index 2
         inet 10.8.57.39 netmask ffffff00 broadcast 10.8.57.255
        ether 0:3:ba:29:fc:cc 

ifconfig -a コマンドの出力には、ce0bge0 という 2 つのインタフェースの統計のみが表示されます。この出力は、ce0bge0 のみが plumb され、ネットワークトラフィックで使用可能なことを示しています。これらのインタフェースは VLAN で使用できます。bge0 は plumb されているので、このインタフェースを集積で使用することはできません。


Procedureシステムインストール後に物理インタフェースを構成する方法

インタフェースを構成するには、次の手順に従います。Solaris 10 3/05 リリースを使用している場合は、「インストール後に物理インタフェースを追加する方法 (Solaris 10 3/05 のみ)」に記載された手順を使用してください。

始める前に
  1. インタフェースがあるシステムで、Primary Administrator の役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Solaris のシステム管理 (基本編)』の第 2 章「Solaris 管理コンソールの操作 (手順)」を参照してください。

  2. 現在システムにインストールされているインタフェースを調べます。


    # dladm show-link
    
  3. 別のインタフェースを構成して plumb します。


    # ifconfig interface plumb up
    

    たとえば、qfe0 の場合は、次のように入力します。


    # ifconfig qfe0 plumb up
    

    注 –

    ifconfig コマンドを使用して明示的に構成されたインタフェースは、リブート後には保持されません。


  4. インタフェースに IPv4 アドレスとネットマスクを割り当てます。


    # ifconfig interface IPv4-address netmask+netmask
    

    たとえば、qfe0 の場合は、次のように入力します。


    # ifconfig
    qfe0 192.168.84.3 netmask + 255.255.255.0
    

    注 –

    IPv4 アドレスは、一般的な IPv4 表記または CIDR 表記で指定できます。


  5. 新しく構成したインタフェースが plumb されて構成済みの状態 (「UP」) であることを確認します。


    # ifconfig
    -a
    

    表示される各インタフェースの状態行を確認します。たとえば次のように出力の状態行に UP フラグが含まれていることを確認します。


    qfe0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4>
    mtu 1500 index 2
  6. (省略可能) リブート後もインタフェースの構成が保持されるようにするには、次の手順を実行します。

    1. 構成するインタフェースごとに、/etc/hostname.interface ファイルを作成します。

      たとえば、qfe0 インタフェースを追加する場合には、次のファイルを作成します。


      # vi /etc/hostname.qfe0
      

      注 –

      同じインタフェース用に別のホスト名ファイルを作成する場合、そのホスト名ファイルの名前も hostname.[0–9]* の形式 (hostname.qfe0.a123など) にする必要があります。hostname.qfe0.bak hostname.qfe0.old のような名前は無効であり、システムの起動中にスクリプトに無視されます。

      また、特定のインタフェースに対応するホスト名ファイルは 1 つだけにする必要があります。/etc/hostname.qfe/etc/hostname.qfe.a123 のように、インタフェースの代替ホスト名ファイルを有効なファイル名で作成した場合、ブートスクリプトは両方のホスト名ファイルの内容を参照することによって構成を試みるため、エラーが発生します。これらのエラーを回避するには、特定の構成で使用したくないホスト名ファイルに無効なファイル名を付けます。


    2. /etc/hostname.interface ファイルを編集します。

      少なくとも、インタフェースの IPv4 アドレスをファイルに追加します。インタフェースの IP アドレスを指定するときには、一般的な IPv4 表記または CIDR 表記を使用できます。ネットマスクやほかの構成情報もファイルに追加できます。


      注 –

      インタフェースに IPv6 アドレスを追加するには、「ホストとサーバーの IPv6 インタフェース構成の変更」を参照してください。


    3. Solaris 10 11/06 以前の Oracle Solaris 10 リリースの場合は、新しいインタフェース用のエントリを /etc/inet/ipnodes ファイルに追加します。

    4. 新しいインタフェース用のエントリを /etc/inet/hosts ファイルに追加します。

    5. 再構成用ブートを実行します。


      # reboot -- -r
      
    6. /etc/hostname.interface ファイルで作成したインタフェースが構成されていることを確認します。


      # ifconfig -a
      

      例については、例 6–2 を参照してください。


例 6–2 持続的なインタフェース構成の追加

この例は、qfe0 インタフェースと qfe1 インタフェースをホストに対して構成する方法を示しています。これらのインタフェースは、リブート後も保持されます。


# dladm show-link
eri0    type: legacy    mtu: 1500       device: eri0 
qfe0    type: legacy    mtu: 1500       device: qfe0 
qfe1    type: legacy    mtu: 1500       device: qfe1 
qfe2    type: legacy    mtu: 1500       device: qfe2 
qfe3    type: legacy    mtu: 1500       device: qfe3 
bge0    type: non-vlan  mtu: 1500       device: bge0
# vi /etc/hostname.qfe0
192.168.84.3 netmask 255.255.255.0
# vi /etc/hostname.qfe1 
192.168.84.72 netmask 255.255.255.0
# vi /etc/inet/hosts
# Internet host table 
# 
127.0.0.1       localhost 
10.0.0.14       myhost
192.168.84.3       interface-2 
192.168.84.72       interface-3
For Solaris 10 11/06 and earlier releases:# vi /etc/inet/ipnodes
10.0.0.14 myhost
192.168.84.3       interface-2 
192.168.84.72       interface-3

この時点でシステムをリブートします。


# reboot -- -r

システムが起動されたら、インタフェースの構成を確認します。


ifconfig -a
# 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 10.0.0.14netmask ff000000 broadcast 10.255.255.255
         ether 8:0:20:c1:8b:c3  
qfe0:flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3  
      inet 192.168.84.3 netmask ffffff00 broadcast 192.255.255.255
      ether 8:0:20:c8:f4:1d  
qfe1: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4>mtu 1500 index 4
         inet 192.168.84.72 netmask ffffff00 broadcast 10.255.255.255
        ether 8:0:20:c8:f4:1e 

参照

Procedure物理インタフェースを削除する方法

物理インタフェースを削除するには、次の手順に従います。以前の Solaris 10 3/05 リリースを使用している場合は、「物理インタフェースを削除する方法 (Solaris 10 3/05 のみ)」を参照してください。

  1. 削除するインタフェースがあるシステムで、Primary Administrator の役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Solaris のシステム管理 (基本編)』の第 2 章「Solaris 管理コンソールの操作 (手順)」を参照してください。

  2. 物理インタフェースを削除します。


    # ifconfig interface down unplumb 
    

    たとえば、qfe1 インタフェースを削除するには、次のように入力します。


    # ifconfig qfe1 down unplumb
    

ProcedureSPARC: インタフェースの MAC アドレスが一意であることを確認する方法

MAC アドレスを構成するには、次の手順に従います。

アプリケーションによっては、ホスト上のすべてのインタフェースでそれぞれ一意の MAC アドレスが使用されている必要があります。ただし、すべての SPARC ベースの システムは、システム共通 MAC アドレスを持っており、デフォルトではすべてのインタフェースがこのアドレスを使用します。次の 2 つの状況では、SPARC システム上のインタフェースに出荷時に設定された MAC アドレスを構成する場合があります。

EEPROM パラメータ local-mac-address? によって、SPARC システム上のすべてのインタフェースがシステム共通 MAC アドレスまたは一意の MAC アドレスのどちらを使用しているかを判別します。次の手順では、eeprom コマンドを使用して、local-mac-address? の現在値をチェックし、必要に応じて変更する方法を示します。

  1. インタフェースがあるシステムで、Primary Administrator の役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Solaris のシステム管理 (基本編)』の第 2 章「Solaris 管理コンソールの操作 (手順)」を参照してください。

  2. システム上のすべてのインタフェースがシステム共通 MAC アドレスを現在使用しているかどうかを判断します。


    # eeprom local-mac-address?
    local-mac-address?=false

    この例では、eeprom コマンドの応答の local-mac-address?=false によって、 すべてのインタフェースがシステム共通 MAC アドレスを使用していることが示されています。local-mac-address?=false の値は、インタフェースを IPMP グループのメンバーにする前に、local-mac-address?=true に変更する必要があります。集積の場合にも、local-mac-address?=falselocal-mac-address?=true に変更してください。

  3. 必要に応じて、local-mac-address? の値を次のように変更します。


    # eeprom local-mac-address?=true
    

    システムをリブートすると、出荷時に設定された MAC アドレスを持つインタフェースは、システム共通 MAC アドレスの代わりに、その出荷時の設定を使用します。出荷時に設定された MAC アドレスを持たないインタフェースは、システム共通 MAC アドレスを引き続き使用します。

  4. システム上のすべてのインタフェースの MAC アドレスをチェックします。

    複数のインタフェースが 同じ MAC アドレスを持つ場合がないかどうかを調べてください。この例では、すべてのインタフェースがシステム共通 MAC アドレス 8:0:20:0:0:1 を使用しています。


    ifconfig -a
    lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
          inet 127.0.0.1 netmask ff000000  
    hme0: flags=1004843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
          inet 10.0.0.112 netmask ffffff80 broadcast 10.0.0.127
          ether 8:0:20:0:0:1 
    ce0: flags=1004843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
          inet 10.0.0.114 netmask ffffff80 broadcast 10.0.0.127
          ether 8:0:20:0:0:1 
    ce1: flags=1004843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
          inet 10.0.0.118 netmask ffffff80 broadcast 10.0.0.127
          ether 8:0:20:0:0:1

    注 –

    同じ MAC アドレスを持つ複数のネットワークインタフェースがまだ残っている場合だけ、次の手順を続けます。それ以外の場合は、最後の手順に進んでください。


  5. すべてのインタフェースが一意の MAC アドレスを持つように、必要に応じて、残りのインタフェースを手動で構成します。

    /etc/hostname.interface ファイル内で、特定のインタフェースに対して一意の MAC アドレスを指定します。

    手順 4 の例では、ce0ce1 をローカルで管理されている MAC アドレスで構成する必要があります。たとえば、ローカルで管理されている MAC アドレス 06:05:04:03:02ce1 を再構成するには、次の行を /etc/hostname.ce1 に追加します。


    ether 06:05:04:03:02 
    

    注 –

    手動で構成した MAC アドレスがネットワークのほかの MAC アドレスと衝突する危険を避けるために、「ローカルで管理される」MAC アドレスは、必ず IEEE 802.3 標準の定義に従って構成してください。


    ifconfig ether コマンドを使用して、現在のセッションに対してインタフェースの MAC アドレスを構成することもできます。ただし、リブート後は ifconfig で直接行われた変更の内容は失われます。詳細は ifconfig(1m) のマニュアルページを参照してください。

  6. システムを再起動します。