ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 管理: ネットワークインタフェースとネットワーク仮想化 Oracle Solaris 11 Information Library (日本語) |
この Oracle Solaris リリースでのネットワーク構成
7. プロファイルでのデータリンクおよびインタフェース構成コマンドの使用
SPARC: インタフェースの MAC アドレスが一意であることを確認する方法
ipadm create-addr コマンドで IP アドレスを割り当てることができない。
IP アドレスの構成中に cannot create address object: Invalid argument provided というメッセージが表示される。
IP インタフェースの構成中に cannot create address: Persistent operation on temporary object というメッセージが表示される。
比較表: ipadm コマンドとその他のネットワークコマンド
ifconfig コマンドのオプションと ipadm コマンドのオプション
ndd コマンドのオプションと ipadm コマンドのオプション
10. Oracle Solaris 上での無線インタフェース通信の構成
次の手順は、IP 構成の各種のニーズのために ipadm コマンドを使用する方法を示しています。ifconfig コマンドも引き続きインタフェースの構成に使用できますが、ipadm コマンドの方が推奨されるツールです。ipadm コマンドとその利点の概要については、「ipadm コマンド」を参照してください。
注 - 通常、IP インタフェースの構成とデータリンクの構成は同時に発生します。そのため、該当する場合、次の手順には dladm コマンドを使用したデータリンクの構成手順が含まれます。dladm コマンドを使用してデータリンクを構成および管理する方法についての詳細は、第 8 章データリンクの構成と管理を参照してください。
次の手順は、IP インタフェースの基本的な構成を実行する例を示しています。
始める前に
システム上のデータリンクの名前を変更するかどうかを決定します。通常は、データリンクにデフォルトで割り当てられている汎用名を使用します。リンク名を変更するには、「データリンクの名前を変更する方法」を参照してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
# dladm show-phys
このコマンドは、システムにインストールされている物理ネットワークカードとそれらのプロパティーのいくつかを示します。このコマンドについての詳細は、データリンクの物理属性に関する情報を表示する方法 を参照してください。
# dladm show-link
このコマンドは、データリンクと、それに対して設定されている特定のプロパティー (リンクの作成に使用した物理カードを含む) を示します。
# ipadm create-interface-class interface
ユーザーが作成できる次の 3 つのインタフェースクラスのうちの 1 つを示します。
IP インタフェース。このインタフェースクラスは、ネットワーク構成を実行するときに作成するもっとも一般的なクラスです。このインタフェースクラスを作成するには、create-ip サブコマンドを使用します。
STREAMS 仮想ネットワークインタフェースドライバ (VNI インタフェース)。このインタフェースクラスを作成するには、create-vni サブコマンドを使用します。VNI デバイスまたはインタフェースについての詳細は、vni(7d) のマニュアルページを参照してください。
IPMP インタフェース。このインタフェースは、IPMP グループを構成するときに使用されます。このインタフェースクラスを作成するには、create-ipmp サブコマンドを使用します。IPMP グループについての詳細は、第 14 章IPMP の紹介 and 第 15 章IPMP の管理を参照してください。
インタフェースの名前を示します。この名前は、インタフェースの作成に使用しているリンクの名前と同じです。
注 - IP インタフェースに IP アドレスを割り当てるには、その IP インタフェースを事前に作成する必要があります。
次の構文では、インタフェースに静的アドレスを割り当てます。IP アドレスを割り当てるためのその他のオプションについては、ipadm(1M) のマニュアルページを参照してください。
# ipadm create-addr -T address-type -a address/prefixlen addrobj
インタフェースに割り当てられる IP アドレスのタイプを指定します。static、dhcp、addrconf のいずれかです。addrconf は、自動的に生成された IPv6 アドレスを示します。
インタフェース上に構成する IP アドレスを指定します。ローカルアドレスのみか、またはトンネル構成の場合はローカルアドレスとリモートアドレスの両方を指定できます。通常は、ローカルアドレスのみを割り当てます。この場合は、-a オプションでアドレスを直接指定します。たとえば、-a address とします。このアドレスは自動的にローカルアドレスとみなされます。
トンネルを構成している場合は、システムのローカルアドレスと宛先システムのリモートアドレスの両方の指定が必要になることがあります。この場合は、2 つのアドレスを区別するために local と remote を次のように指定する必要があります:-a local=local-addr,remote= remote-addr。トンネルの構成についての詳細は、『Oracle Solaris の管理: IP サービス』の第 6 章「IP トンネルの構成」を参照してください。
数値 IP アドレスを使用している場合は、CIDR 表記のアドレスに address/ prefixlen という形式を使用します。たとえば、1.2.3.4/24 とします。prefixlen オプションの説明を参照してください。
必要に応じて、数値 IP アドレスの代わりに address にホスト名を指定できます。ホスト名の使用が有効なのは、そのホスト名に対応する数値 IP アドレスが /etc/hosts ファイルで定義されている場合です。このファイルで数値 IP アドレスが定義されていない場合は、name-service/switch サービスで host に対して指定されているリゾルバの順序を使用して、この数値が一意に取得されます。特定のホスト名に対して複数のエントリが存在する場合は、エラーが生成されます。
注 - ブートプロセスにおいて、IP アドレスの作成は、ネームサービスがオンラインになる前に実行されます。そのため、ネットワーク構成で使用されているすべてのホスト名が /etc/hosts ファイルで定義されているようにする必要があります。
CIDR 表記を使用する場合に IPv4 アドレスの一部であるネットワーク ID の長さを指定します。アドレス 12.34.56.78/24 では、24 が prefixlen です。prefixlen を含めない場合は、name-service/switch サービスで netmask に対して示されているシーケンスに従って、またはクラスフルアドレスのセマンティクスを使用してネットマスクが計算されます。
システムで使用されている一意の IP アドレスまたはアドレスのセットの識別子を指定します。これらのアドレスは、IPv4 または IPv6 タイプのいずれかです。この識別子は、interface/ user_specified_string という形式を使用します。
interface は、アドレスが割り当てられる IP インタフェースを示します。interface 変数には、IP インタフェースが構成されるデータリンクの名前が反映されている必要があります。
user-specified-string は、アルファベット文字で始まり、最大長が 32 文字の英数字の文字列を示します。その後、ipadm show-addr や ipadm delete-addr などの、システム内のアドレスを管理する任意の ipadm サブコマンドを使用するときに、数値 IP アドレスの代わりに addrobj を参照できます。
調べる対象の情報に応じて、次のコマンドを使用できます。
インタフェースの一般的なステータスを表示します。
# ipadm show-if [interface]
インタフェースを指定しない場合は、システム内のすべてのインタフェースの情報が表示されます。
インタフェースのアドレス情報を表示します。
# ipadm show-addr [addrobj]
addrobj を指定しない場合は、システム内のすべてのアドレスオブジェクトの情報が表示されます。
ipadm show-* サブコマンドの出力についての詳細は、「IP インタフェースとアドレスの監視」を参照してください。
このファイル内のエントリは、IP アドレスとそれに対応するホスト名で構成されています。
注 - この手順は、ホスト名を使用する静的 IP アドレスを構成している場合にのみ適用されます。DHCP アドレスを構成している場合は、/etc/hosts ファイルを更新する必要はありません。
例 9-1 静的アドレスによるネットワークインタフェースの構成
# dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net3 Ethernet up 100Mb full bge3 # dladm show-link LINK CLASS MTU STATE BRIDGE OVER net3 phys 1500 up -- -- # ipadm create-ip net3 # ipadm create-addr -T static -a 192.168.84.3/24 net3/v4static # ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- net3 ip ok yes -- # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net3/v4 static ok 192.168.84.3/24 # vi /etc/hosts # Internet host table # 127.0.0.1 localhost 10.0.0.14 myhost 192.168.84.3 campus01
/etc/hosts ファイルで campus01 がすでに定義されている場合は、次のアドレスを割り当てるときにそのホスト名を使用できます。
# ipadm create-addr -T static -a campus01 net3/v4static
例 9-2 IP アドレスによるネットワークインタフェースの自動的な構成
この例では、前の例と同じネットワークデバイスを使用しますが、自身のアドレスを DHCP サーバーから受信するように IP インタフェースを構成します。
# dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net3 Ethernet up 100Mb full bge3 # dladm show-link LINK CLASS MTU STATE BRIDGE OVER net3 phys 1500 up -- -- # ipadm create-ip net3 # ipadm create-addr -T dhcp net3/dhcp # ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- net3 ip ok yes -- # ipadm show-addr net3/dhcp ADDROBJ TYPE STATE ADDR net3/dhcp dhcp ok 10.8.48.242/24 # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net3/dhcp dhcp ok 10.8.48.242/24
ipadm コマンドを使用すると、インタフェースにアドレスが割り当てられたあと、それらのアドレス固有のプロパティーを設定できます。これらのプロパティーを設定することによって、次のことを決定できます。
アドレスの prefixlen。
IP アドレスを送信パケットの発信元アドレスとして使用できるかどうか。
アドレスが大域ゾーンまたは非大域ゾーンのどちらに属するか。
アドレスがプライベートアドレスであるかどうか。
IP アドレスのプロパティーを一覧表示するには、次の構文を使用します。
# ipadm show-addrprop [-p property] [addrobj]
表示される情報は、使用するオプションによって異なります。
プロパティーもアドレスオブジェクトも指定しない場合は、既存のすべてのアドレスのすべてのプロパティーが表示されます。
プロパティーのみを指定した場合は、すべてのアドレスのそのプロパティーが表示されます。
アドレスオブジェクトのみを指定した場合は、そのアドレスオブジェクトのすべてのプロパティーが表示されます。
注 - 一度に設定できるアドレスのプロパティーは 1 つだけです。
この手順は、IP アドレスのプロパティーを構成するための一般的な手順を示しています。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
# ipadm show-addr
# ipadm show-addrprop -p property addrobj
プロパティーがわからない場合は、一般的な ipadm show-addrprop コマンドを発行できます。このコマンドを使用して IP アドレスを表示すると、アドレスは、そのすべてのプロパティーの現在の設定とともに表示されます。
# ipadm set-addrprop -p property=value addrobj
# ipadm show-addrprop -p property addrobj
例 9-3 アドレスの prefixlen プロパティーの設定
prefixlen プロパティーは、IP アドレスのネットマスクを示します。次の例では、net3 の IP アドレスの prefixlen プロパティーの長さを変更します。この例では、プロパティーの一時的な変更のみを作成するために -t オプションが使用されています。システムがリブートされると、このプロパティーの値はデフォルト設定に戻ります。
# ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net3/v4 static ok 192.168.84.3/24 # ipadm show-addrprop -p prefixlen net3/v4 ADDROBJ PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE net3/v4 prefixlen rw 24 24 24 1-30,32 # ipadm set-addrprop -t -p prefixlen=8 net3/v4 # ipadm show-addrprop -p prefixlen net3/v4 ADDROBJ PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE net3/v4 prefixlen rw 8 24 24 1-30,32
IP インタフェースには、データリンクと同様に、特定のネットワーク設定のためにユーザーがカスタマイズできるプロパティーがあります。インタフェースごとに、それぞれ IPv4 プロトコルと IPv6 プロトコルに適用される 2 つのプロパティーセットが存在します。MTU などの一部のプロパティーは、データリンクと IP インタフェースの両方に共通です。そのため、データリンクに対してある MTU 設定を構成し、そのリンク上に構成されているインタフェースに対して別の MTU 設定を構成することができます。さらに、その IP インタフェースをたどる、それぞれ IPv4 パケットと IPv6 パケットに適用される異なる MTU 設定を構成できます。
IP 転送は、通常はネットワーキングのシナリオで構成される IP インタフェースのプロパティーです。次の手順は、この手順を示しています。
ネットワーク内で、あるホストは、別のホストシステムに宛てられたデータパケットを受信できます。受信側のローカルシステムでパケット転送を有効にすることによって、そのシステムは、データパケットを宛先ホストに転送できます。デフォルトでは、IP 転送は無効になっています。次の 2 つの手順では、この機能を有効にする方法について説明します。以前の Oracle Solaris リリースでは、パケット転送を有効にするために routeadm コマンドが使用されました。この手順での ipadm 構文によって routeadm コマンドが置き換えられます。
インタフェースベースの手順またはプロトコルベースの手順のどちらを使用するかを判定するには、次の点を考慮してください。
パケットの転送方法を選択できるようにする場合は、インタフェース上でパケット転送を有効にします。たとえば、複数の NIC を備えたシステムがあるとします。一部の NIC が外部ネットワークに接続されているのに対して、その他の NIC はプライベートネットワークに接続されています。そのため、すべてのインタフェースではなく、一部のインタフェース上でのみパケット転送を有効にします。「インタフェースのプロパティーを設定することによって IP パケット転送を有効にする方法」を参照してください。
システム内でグローバルにパケット転送を実装する場合は、プロトコルの forwarding プロパティーを有効にします。この 2 番目の方法については、「プロトコルのプロパティーを設定することによってパケット転送を有効にする方法」を参照してください。
注 - このパケット転送の 2 つの方法は、相互に排他的ではありません。たとえば、グローバルにパケット転送を有効にしたあと、インタフェースごとに forwarding プロパティーをカスタマイズできます。そのため、その特定のシステムでは、パケット転送は引き続き選択的です。
この手順は、特定のインタフェース上で IP 転送のプロパティーを構成することによって選択的にパケット転送を有効にする方法を示しています。
注 - パケット転送には IP プロトコルが必要です。また、そのため、この手順には IP のプロトコルバージョンの区別も含まれます。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
# ipadm show-ifprop -p forwarding [-m protocol-version] interface
ここで、protocol-version は ipv4 または ipv6 のどちらかです。バージョンを指定しない場合は、IPv4 プロトコルと IPv6 プロトコルの両方の設定が表示されます。
注 - 特定のインタフェースの有効なプロトコルのプロパティーをすべて表示するには、次に示すように、プロパティーを指定しないでください。
# ipadm show-ifprop interface
この構文は、例 9-4 にも示されています。
# ipadm set-ifprop forwarding=on -m protocol-version interface
# ipadm show-ifprop -p forwarding interface
# ipadm reset-ifprop -p forwarding -m protocol-version interface
例 9-4 インタフェースでの IPv4 パケットのみの転送を有効にする
次の例は、選択的なパケット転送を実装する方法を示しています。ここでは、net0 インタフェースでのみ IPv4 パケットの転送が有効になります。システムのほかの残りのインタフェースでは、パケット転送は無効 (デフォルト設定) になっています。
# ipadm show-ifprop -p forwarding net0 IFNAME PROPERTY PROTO PERM CURRENT PERSISTENT DEFAULT POSSIBLE net0 forwarding ipv4 rw off off off on,off net0 forwarding ipv6 rw off -- off on,off
- p property オプションを使用する ipadm show-ifprop コマンド構文では、特定のプロパティーに関する情報のみが表示されます。
# ipadm set-ifprop -p forwarding=on -m ipv4 net0 # ipadm show-ifprop net0 IFNAME PROPERTY PROTO PERM CURRENT PERSISTENT DEFAULT POSSIBLE ... net0 forwarding ipv4 rw on on off on,off ...
- p property オプションを使用しない ipadm show-ifprop コマンド構文では、インタフェースのすべてのプロパティーとそれらに対応する設定が表示されます。
# ipadm reset-ifprop -p forwarding -m ipv4 net0 # ipadm show-ifprop -p forwarding -m ipv4 net0 IFNAME PROPERTY PROTO PERM CURRENT PERSISTENT DEFAULT POSSIBLE net0 forwarding ipv4 rw off off off on,off
ipadm reset-ifprop コマンド構文は、指定されたプロパティーをデフォルト設定にリセットします。
この手順は、システム内でグローバルにパケット転送を有効にする方法を示しています。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
# ipadm show-prop -p forwarding protocol-version
ここで、protocol-version は ipv4 または ipv6 のどちらかです。
注 - 特定のプロトコルの有効なすべてのチューニング可能パラメータのプロパティーと、それらの現在の設定を表示するには、次のコマンドを入力します。
# ipadm show-prop protocol
ここで、protocol は、ip、ipv4、ipv6、udp、tcp、icmp、および sctp のいずれかです。
この構文は、例 9-5 に示されています。
# ipadm set-prop forwarding=on protocol-version
プロトコルのすべてのプロパティーとプロトコルの現在の設定を表示するには、次のように入力します。
# ipadm show-prop protocol
プロトコルの特定のプロパティーを表示するには、次のように入力します。
# ipadm show-prop -p property protocol
特定のプロトコルバージョンの特定のプロパティーを表示するには、次のように入力します。
# ipadm show-prop -p property protocol-version
# ipadm reset-prop -p property protocol-version
例 9-5 IPv4 パケットと IPv6 パケットの転送を有効にする
次の例は、インタフェース上でのパケットの転送に関する前の例に相当します。ipadm show-prop の 2 つの使用によって、指定されたプロパティーの設定、またはプロトコルのすべてのプロパティーとそれらに対応する設定が表示されます。
# ipadm show-prop -p forwarding ip PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE ipv4 forwarding rw off -- off on,off ipv6 forwarding rw off -- off on,off # # ipadm set-prop -p forwarding=on ipv4 # ipadm set-prop -p forwarding=on ipv6 # # ipadm show-prop ip PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE ipv4 forwarding rw on on off on,off ipv4 ttl rw 255 -- 255 1-255 ipv6 forwarding rw on on off on,off ipv6 hoplimit rw 255 -- 255 1-255#