カーネル スタックについて
カーネル スタック(kstack)は、既知の Linux API を使用してルートとフロント パネル ポートを管理します。
オープン コンテナは、ゲスト シェルと同様に、ホスト ソフトウェアから分離された Linux 環境です。ホスト ソフトウェア パッケージに影響を与えることなく、その環境内でソフトウェアをインストールまたは変更できます。
この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章は、次の内容で構成されています。
カーネル スタック(kstack)は、既知の Linux API を使用してルートとフロント パネル ポートを管理します。
オープン コンテナは、ゲスト シェルと同様に、ホスト ソフトウェアから分離された Linux 環境です。ホスト ソフトウェア パッケージに影響を与えることなく、その環境内でソフトウェアをインストールまたは変更できます。
Using the Kernel Stack has the following guidelines and limitations:
Starting with NX-OS 7.0(3)F3(1), the Kernel Stack is supported on the Cisco Nexus 9508 switch.
Guest Shell, other open containers, and the host Bash Shell use Kernel Stack (kstack).
Open containers start in the host default namespace
Other network namespaces might be accessed by using the setns system call
The nsenter and ip netns exec utilities can be used to execute within the context of a different network namespace.
The PIDs and identify options for the ip netns command do not work without modification because of the file system device check. A vrfinfo utility is provided to give the network administrator the same information.
Open containers may read the interface state from /proc/net/dev or use other normal Linux utilities such as netstat or ifconfig without modification. This provides counters for packets that have initiated / terminated on the switch.
Open containers may use ethtool –S to get extended statistics from the net devices. This includes packets switched through the interface.
Open containers may run packet capture applications like tcpdump to capture packets initiated from or terminated on the switch.
There is no support for networking state changes (interface creation/deletion, IP address configuration, MTU change, etc.) from the Open containers
IPv4 and IPv6 are supported
Raw PF_PACKET is supported
Well-known ports (0-15000) may only be used by one stack (Netstack or kstack) at a time, regardless of the network namespace.
There is no IP connectivity between Netstack and kstack applications. This is a host limitation which also applies to open containers.
Open containers are not allowed to send packets directly over an Ethernet out-of-band channel (EOBC) interface to communicate with the linecards or standby Sup.
From within an open container, direct access to the EOBC interface used for internal communication with linecards or the standby supervisor. The host bash shell should be used if this access is needed.
The management interface (mgmt0) is represented as eth1 in the kernel netdevices.
Use of the VXLAN overlay interface (NVE x) is not supported for applications utilizing the kernel stack. NX-OS features, including CLI commands, are able to use this interface via netstack.
For more information about the NVE interface, see the Cisco Nexus 9000 Series NX-OS VXLAN Configuration Guide.
Netstack と kstack は、それらの間のポート範囲を分割します。デフォルトのポート範囲は次のとおりです:
Kstack:15001 ~ 58000
Netstack:58001 ~ 65535
(注) |
この範囲内で、63536 ~ 65535 は NAT 用に予約されています。 |
(注) |
nxapi use-vrf management で構成されたポートは kstack を使用し、アクセス可能です。 |
コマンドまたはアクション | 目的 |
---|---|
[no] sockets local-port-range start-port end-port |
このコマンドは、kstack のポート範囲を変更します。このコマンドは、Netstack の範囲を変更しません。 |
次に、kstack ポート範囲を設定する例を示します:
switch# sockets local-port-range 15001 25000
コマンドを入力した後は、次の点に注意してください:
コマンドを入力した後には、スイッチをリロードします。
Netstack で使用される 7000 以上のポートを、未割り当てのままにします。
ポート範囲に抜けが生じるのを回避するには、start-port を 15001 に指定するか、end-port を 65535 に指定します。