# IP / IPインターフェース

IPインターフェースは、IPパケットの送受信（IP通信）を行うためのインターフェースです。
IPインターフェースは、インターフェースモードでip addressコマンドを実行し、対象インターフェースにIPアドレス（とネットマスク）を割り当てることによって作成します。
IPアドレスを割り当てることのできるインターフェースは次のとおりです。

- Ethernetインターフェース（eth0～ethX）
- 802.1Q Ethernetサブインターフェース（eth1.X～eth2.X。X=1～4094）
- PPPoEインターフェース（ppp0～ppp255）
- トンネルインターフェース（tunnel0～tunnel999）
- 802.1Q トンネルサブインターフェース（tunnel0.X～tunnel999.X。X=1～4094）
- ブリッジインターフェース（br1～br255）
- lo（ループバックインターフェース）

Note

Ethernetインターフェースは、AT-NFV-APLのGUI設定画面で本製品のアプリケーションインスタンスに割り当てたネットワークインターフェースのことを表します。

Note

本製品がスタートアップコンフィグなしで起動した場合、Ethernetインターフェース（ethX）には、AT-NFV-APLのGUI設定画面で指定したIPv4アドレス（固定またはDHCP）が自動的に設定され、その内容がip addressコマンドまたはip address dhcpコマンドとしてランニングコンフィグに反映されます。
ただし、AT-NFV-APLのGUI設定画面で指定した内容が動作に反映されるのは、本製品がコンフィグなしで起動したときだけです。
起動時にコンフィグが存在する場合は、コンフィグファイルの記述にしたがって設定が復元されますので、AT-NFV-APLのGUIで初期設定したIPアドレスを後から変更するときは、本製品のCLIからip addressコマンドかip address dhcpコマンドを実行してください。

## IPインターフェースの作成・削除

IPインターフェースを作成するにはインターフェースモードのip addressコマンドを使って、対象インターフェースにIPアドレスとネットマスクを割り当てます。ネットマスクはマスク長で指定します。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# ip address 192.168.10.1/24

Note

複数のインターフェースに対し、同一サブネットのIPアドレスを割り当てることはできません。たとえば、eth0にIPアドレス192.168.10.1/24を割り当てた場合、192.168.10.2～192.168.10.254の範囲は同一IPサブネットになるので、この範囲を他のインターフェースに割り当てることはできません。
ただし、同一インターフェース上のプライマリーアドレス・セカンダリーアドレスの間であれば、同一サブネットのIPアドレスを割り当てることができます。

Note

トンネルインターフェースにIPアドレスを設定する場合のマスク長は30ビット以下を推奨します。トンネルインターフェースのIPアドレスを「ip address 192.168.254.1/32」のように32ビットマスクで設定することも可能ですが、トンネルインターフェース上でOSPFなどの経路制御プロトコルを動作させる場合は、ホストアドレスを複数取れる30ビット以下のサブネットマスクを設定する必要があるためです。ただし、L2TPv3トンネルインターフェースにIPアドレスを設定する場合のマスク長は必ず30ビット以下としてください。

インターフェースに割り当てたIPアドレスを変更するには、再度ip addressコマンドを実行します。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# ip address 192.168.100.1/24

インターフェースに割り当てたIPアドレスを削除するには、ip addressコマンドをno形式で実行します。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# no ip address

割り当てられたIPアドレスなど、IPインターフェースの情報はshow ip interfaceコマンドで確認できます。

    AT-vFW-app> show ip interface

## DHCPによるIPアドレス自動設定

ネットワーク上のDHCPサーバーを利用して、インターフェースのIPアドレスを自動設定することもできます（DHCPクライアント機能）。
Note

本製品はDHCPサーバーとして、クライアントにIPアドレスやIPパラメーターを割り当てることもできます。ここで説明しているのは、本製品がDHCPクライアントとして別のDHCPサーバーからアドレスをもらうための設定です。DHCPサーバー機能については、「IP付加機能」の「DHCPサーバー」をご覧ください。

インターフェースのIPアドレスをDHCPを使って設定するには、ip address dhcpコマンドを使います。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# ip address dhcp

DHCPでIPアドレスを配布するインターネットサービスプロバイダー（ISP）をご利用の場合、接続認証用の「コンピューター名」を指定されることがあります。その場合は、ip address dhcpコマンドのhostnameオプションにISPから通知されたコンピューター名を指定してください。これにより、同コマンドで設定したコンピューター名が、DHCPパケットのHostnameフィールドにセットされて送信されるようになります。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# ip address dhcp hostname myComputerName

本製品のDHCPクライアント機能では、インターフェースのIPアドレスとサブネットマスクに加え、デフォルトゲートウェイ、DNSサーバー、デフォルトドメイン名の情報も取得・自動設定できます。DHCPで取得したこれらの情報は次のように扱われます。

- デフォルトゲートウェイの情報（オプションコード3）は、IP経路表にデフォルト経路として追加されます。
  DHCPに由来するデフォルト経路の管理距離は初期設定では1になりますが、インターフェースモードのip dhcp-client default-route distanceコマンドでインターフェースごとに変更可能です。
- DNSサーバーの情報（オプションコード6）は、「DNSサーバーリスト」（show ip name-serverコマンド）内において、ip name-serverコマンドで手動設定したDNSサーバーアドレスよりも前の位置に追加され、優先的に使用されます。DHCPとIPCP（ppp ipcp dnsコマンド）の両方が有効な場合は、先に学習したほうが優先されます。なお、ip name-server preferred-orderコマンドを使用すれば、手動設定したDNSサーバーを動的学習したDNSサーバーより優先的に使用させる設定も可能です。
- デフォルトドメイン名の情報（オプションコード15）は、ip domain-nameコマンドで手動設定した情報を上書きします（ただし、ip domain-listコマンドで「検索ドメインリスト」が設定されている場合、デフォルトドメイン名の設定は使用されません）。

DHCPクライアントとして設定しているインターフェースを確認したいときは、show running-configコマンドにセクション名「interface」を指定して実行し、ip address dhcpコマンドを探すのがよいでしょう。

    AT-vFW-app# show running-config interface

DHCPサーバーから割り当てられたIPアドレス、サブネットマスク、デフォルトゲートウェイ、DNSサーバーなどは、show dhcp leaseコマンドで確認できます。
インターフェースに設定されたIPアドレスは、show ip interfaceコマンドで確認します。
デフォルトルートはshow ip routeコマンドで確認します。「0.0.0.0/0」のエントリーがデフォルトルートです。
ドメイン名の設定は、show ip domain-nameコマンドで確認します。
DNSサーバーアドレスの設定状況は、show ip name-serverコマンドで確認します。

## セカンダリーIPアドレス

本製品では、1つのインターフェース上に複数のIPアドレスを設定することができます。こうすることにより、同一インターフェースの配下に複数のIPサブネットを混在させることができます。
複数のIPアドレスを割り当てる場合、主となるアドレスをプライマリーアドレス、その他のアドレスをセカンダリーアドレスと呼びます。
eth0にIPアドレスを3つ割り当てます。複数アドレスを設定する場合は、最初にプライマリーアドレスを割り当て、次にセカンダリーアドレスを割り当てます。セカンダリーアドレスを設定するときは、ip addressコマンドにsecondaryオプションを付けてください。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# ip address 192.168.10.1/24
    AT-vFW-app(config-if)# ip address 192.168.11.1/24 secondary
    AT-vFW-app(config-if)# ip address 192.168.12.1/24 secondary

Note

secondaryオプションを忘れると、プライマリーアドレスの指定となるため、以前に設定したプライマリーアドレスが変更されてしまいます。たとえば、前記の「ip address 192.168.11.1/24 secondary」を「ip address 192.168.11.1/24」としてしまうと、その前の行で設定したプライマリーアドレス192.168.10.1/24が192.168.11.1/24に変更されてしまいます。

Note

プライマリーアドレスを削除または変更する場合は事前にセカンダリーアドレスを削除する必要があります。変更時はプライマリーアドレス変更後にセカンダリーアドレスを再設定してください。

Note

セカンダリーIPアドレスを使ってインターフェースに複数のIPアドレスを設定した場合、複数設定した内のいずれか1つのIPサブネット上でDHCPサーバー機能を使用することはできますが、複数のIPサブネット上では使用できません。

Note

セカンダリーIPアドレスを使ってインターフェースに複数のIPアドレスを設定した場合、そのインターフェースではRIPを使用できません。

## ループバックインターフェース

ループバックインターフェースは、下位層（物理層/データリンク層）との関連を持たない仮想的なインターフェースです。物理的なインターフェースに割り当てたIPアドレスは、該当インターフェースのリンクダウンにより到達不能になる可能性がありますが、ループバックインターフェースは下位層の状態に依存しないため、このインターフェースに設定したIPアドレスを広告することで、本製品への到達性を高めることができます。
ループバックインターフェースは「lo」というインターフェース名を持ちます。ループバックインターフェースにIPアドレスを設定するには、次のようにします。

    AT-vFW-app(config)# interface lo
    AT-vFW-app(config-if)# ip address 192.168.0.1/32

ループバックインターフェースのIPアドレスを変更するには、再度ip addressコマンドを実行します。

    AT-vFW-app(config)# interface lo
    AT-vFW-app(config-if)# ip address 192.168.0.2/32

ループバックインターフェースのIPアドレスを削除するには、ip addressコマンドをno形式で実行します。

    AT-vFW-app(config)# interface lo
    AT-vFW-app(config-if)# no ip address

ループバックインターフェースの情報を確認するには、show interfaceコマンドかshow ip interfaceコマンドを使います。「lo」がループバックインターフェースです。

    AT-vFW-app> show interface lo
    AT-vFW-app> show ip interface lo

## ディレクティドブロードキャスト転送制御

本製品の初期設定では、各IPインターフェース配下のネットワークに対するディレクティドブロードキャストパケットを転送しません。
たとえば、eth0に192.168.10.1/24を、eth1に192.168.20.1/24を設定している場合、eth1で受信した「終点IPアドレス＝192.168.10.255」のIPパケット（eth0側サブネットに対するディレクティドブロードキャストパケット）は、eth0に転送されずに破棄されます。
ディレクティドブロードキャストパケットはサービス妨害（DoS）攻撃などで悪用される恐れがあるため、通常は初期設定のままご使用になることをおすすめしますが、特別な理由がある場合は、IPインターフェースごとに転送を許可する設定も可能です。
eth0に対するディレクティドブロードキャストパケットの転送を許可するには、eth0を対象としたインターフェースモードでip directed-broadcastコマンドを実行します。これにより、他のインターフェースからeth0へのディレクティドブロードキャストパケットが転送されるようになります。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# ip directed-broadcast

ディレクティドブロードキャストパケットの転送を禁止するには、ip directed-broadcastコマンドをno形式で実行してください（前述のとおり、初期状態では転送禁止に設定されています）。

    AT-vFW-app(config)# interface eth0
    AT-vFW-app(config-if)# no ip directed-broadcast