CCNP対策

ACLの適用種別

interface:ip access-group
interface(ipv6):ipv6 traffic-filter _name [in/out]
class-map:access-group
vty:access-class
route-map:ip address

経路集約

プロトコル集約場所コマンド
OSPF ABRエリア間area range
OSPF ASBR再配送時summary-address
EIGRP任意IFip summary-address eigrp
BGPBGPプロセスaggregate-address

EIGRPのコスト計算方法

EIGRPのメトリック = 256 ×( 帯域幅 + 遅延 )
帯域幅 = 10,000,000 ÷ 経路上の最小帯域幅(Kbps)
遅延 = 経路上の遅延合計(μ秒) ÷ 10

1.目的地までの中で最小帯域幅をピックアップする
2.1の帯域幅をkbpsに変換する
3.10^7 ÷ “手順2で算出した数値” を計算する(単位はkbpsのまま)
4.目的地までの遅延の合計を算出する
5.4で算出した値 ÷ 10 を計算する
6.(3と5で算出した値を加算した値) × 256 を算出する
7.各径路の6の値を比較して適切な経路がテーブルに反映される

用語意味
FD(Feasible Distance)R1から宛先までの自分が計算したトータルコスト
AD(Advertised Distance)隣接ルーターが「自分から宛先までのコスト」として広告してきた値
サクセサーFDが最小のルート=メインルート
フィージブルサクセサーバックアップルートになれる候補

そのルートのAD < 現在のサクセサーのFDならばフィージブルサクセサーだよねってこと。
variance 2とかをする場合は 
フィージブル条件を満たしている
&(かつ)
フィージブルサクセサーのFD ≦ サクセサーのFD × variance ならばルーティングに登録

サブネットマスクの計算

やり方は以下の3ステップです。「203.0.113.17 /28」を例にします。
(サブネット算出
→ 256-サブネット=きざみ幅
→IP÷きざみ幅=xあまりy
→IP-あまり

  1. マスクの末尾を256から引いて「きざみ幅」を出す
    • マスクは 255.255.255.240 です。
    • 256 – 240 = 16 (16個きざみだと分かります)
  2. IPの末尾を「きざみ幅」で割って「余り」を出す
    • 今回のIPは .17 です。
    • 17 ÷ 16 = 1 あまり 1
  3. 元のIPから「余り」を引く ➔ これがネットワークアドレス!
    • 17 – 1 = 16

ワイルドカードマスクの算出

ワイルドカードマスクを求めるときは、「調べたい範囲の終わりのIP」から「始まりのIP」を引き算すると、一発で答えが出ます。

今回のターゲットである「クラスBのプライベートIP」の範囲を並べて、引き算してみましょう。

  • 終わりのIP: 172 . 31 . 255 . 255
  • 始まりのIP: 172 . 16 . 0 . 0
  • 引き算の答え: 0 . 15 . 255 . 255

第2オクテット(2番目の区切り)を見ると、「31 – 16 = 15」 になっていますよね。 これが、コマンドで 0.15.255.255 を使う一番簡単な理由です。

YANGとXMLとJSONとか

名前役割
YANG設計図
・インタフェースにはIPアドレスという項目がある
・BGPにはAS番号という項目がある
という構造・ルールを定義する
NETCONF/RESTCONFデータの送信方法
XML/JSONデータの書き方
(YANGで定義された必要な項目をどのように書くか)

pythonやjavaなどはプログラミング言語。
送信側と受信側で常に同一言語が使われているわけではない。そういったときのデータの受け渡しには決まりが必要。そのデータ受け渡しの標準がXMLやJSONである。あくまでもデータの受け渡しを担当。
*命令処理などを送ったりするわけではない
XML
<interface>
  <name>GigabitEthernet0/0</name>
  <ip>192.168.1.1</ip>
</interface>
JSON
{
  "interface": {
    "name": "GigabitEthernet0/0",
    "ip": "192.168.1.1"
  }
}

NETCONFとRESTCONF

比較項目NETCONF (Network Configuration Protocol)RESTCONF (RESTful Configuration Protocol)
トランスポート層SSH (標準ポート: TCP 830) ※TLSなども可HTTP / HTTPS (標準的なWebポート)
データフォーマットXML のみXML および JSON の両方に対応
操作・通信方式リモートプロシージャコール (RPC)
(例: <rpc>, <rpc-reply>)
HTTP メソッド
(GET, POST, PUT, PATCH, DELETE)
セッション管理ステートフル(接続を維持してセッション管理)ステートレス(HTTPの仕組みに準拠)
主な特徴・メリット厳密なトランザクション制御や、複数機器への一括設定・ロールバック機能に優れるWeb技術との親和性が高く、軽量なスクリプトやAPI連携が容易
主なユースケースネットワーク機器の高度な構成管理、信頼性重視のオーケストレーションクラウド管理ツールとの連携、Webダッシュボードからの操作、簡易的な自動化

Pythonのライブラリ

関数変換前変換後
json.dumpsデータJSON文字列
json.loadsJSON文字列辞書
json.dumpデータJsonに変換しファイルに書き込む
json.loadファイル辞書型で読み込む

構成管理ツール

特徴AnsiblePuppetChefSaltStack
PUSH/PULLPUSH型PULL型PULL型PUSH型、PULL型
(両方の動作が可能)
使用するプロトコルSSH、NETCONFなどHTTPHTTPSSH、ZeroMQなど
定義ファイルの名称プレイブック (Playbook)マニフェスト (Manifest)レシピ (Recipe)、クックブック (Cookbook)ステート (State)
定義ファイルの記述形式YAML形式独自形式Ruby言語YAML形式、独自形式
サーバ側の待受ポートなし8140/tcp10002/tcp4505/tcp、4506/tcp
エージェントの要否不要 (エージェントレス)必要 (外部エージェントも利用可能)必要必要 (Salt SSHではエージェントなしでも動作可能)
コードの記法手続き型宣言型手続き型手続き型、宣言型
開発言語PythonRubyRubyPython

AD値(アドミニストレイティブディスタンス)

ルーティングプロトコル / ルート種別AD値(デフォルト)備考
Directly Connected(直結)0インターフェイスが直接繋がっている状態
Static Route(スタティック)1手動で設定する静的ルート
EIGRP(Summary / サマリー)5EIGRPの経路集約ルート
External BGP (eBGP / 外部)20異なるAS(外部)から学習するBGPルート
EIGRP(Internal / 内部)90同じAS内で学習するEIGRPルート
IGRP100(レガシープロトコル・現在はほぼ不使用)
OSPF110広く使われるリンクステート型ルーティングプロトコル
IS-IS115大規模ネットワーク向けプロトコル
RIP120ホップ数ベースのディスタンスベクタ型プロトコル
EIGRP(External / 外部)170他のプロトコルからEIGRPに再配送されたルート
Internal BGP (iBGP / 内部)200同じAS内で学習するBGPルート
Unknown / Unreachable(不明)255信頼性なし(ルートとして採用しない)

STPのコスト算出方法

帯域幅パスコスト(改訂版・推奨)パスコスト(旧規格)
10 Mbps100100
100 Mbps1910
1 Gbps41
10 Gbps21

STP関連のプロトコル

プロトコルSTPRSTPMSTCST
規格IEEE802.1DIEEE802.1wIEEE802.1sIEEE802.1Q
Ciscoでの実装PVST+Rapid PVST+MST
(Rapid PVST+で動作)
無し
インスタンスの数VLANごとに1つVLANごとに1つ複数のVLANで1つ全体で1つ
インスタンスごとの負荷分散可可可不可

自動集約の考え方

クラス第1オクテットデフォルトマスク
A1~126/8
B128~191/16
C192~223/24
D224~239マルチキャスト
E240~255実験用

プレフィックスが増大した時のエントリ数が何個になるかの計算方法

増えた分のエントリ数=2(変更後のプレフィックス長-変更前のプレフックス長)

例1:/8 から /10 にした場合
2(10-8)=4

例2:22/ から /25 にした場合
2(25-22)=8

色々なプロトコルの認証コマンド

▼OSPF

ShellScript
#インタフェース単位のMD5認証
int g0/0
ip ospf authentication message-digest #MD5認証の有効化
ip ospf message-digest-key キーID md5 パスワード #キーIDとパスワードの設定

#インタフェース単位の平文認証
int g0/0
ip ospf authentication
ip ospf authentication-key パスワード

#エリア単位の認証
router ospf 1
 area 0 authentication message-digest #エリアでMD5認証を有効化する

int g0/0
 ip ospf message-digest-key キーID md5 パスワード
 
#キーチェインを使う場合
key chain キーチェイン名
 key キー番号
  key-string パスワード
  cryptographic-algorithm hmac-sha-256
  send-life 00:00:00 Jan 1 2026 23:59:59 Dec 31 2026
  accept-lifetime 00:00:00 Jan 1 2026 23:59:59 Dec 31 2026

int g0/0
 ip ospf authentication key-chain キーチェイン名

▼BGP

ShellScript
#認証設定方法(シンプルバージョン)-------------------------------
router bgp AS番号
neighbor 192.0.2.2 password MySecretPassword123

#認証設定方法(キーチェーンを使うバージョン)-----------------------
key chain キーチェイン名
 key キー番号
  key-string パスワード
  send-life 00:00:00 Jan 1 2026 23:59:59 Dec 31 2026
  accept-lifetime 00:00:00 Jan 1 2026 23:59:59 Dec 31 2026

 key キー番号
  key-string パスワード
  send-life 00:00:00 Jan 1 2026 23:59:59 Dec 31 2026
  accept-lifetime 00:00:00 Jan 1 2026 23:59:59 Dec 31 2026
  
router bgp 65001
 neighbor 192.0.2.2 password encrypted-key-chain キーチェイン名
  
#send-lif:このカギを送信時に使う期間
#accept-lifetime:このカギを受信時に使う期間

▼EIGRP

ShellScript
#HMAC-SHA-256バージョン
key chain キーチェイン名
 key 1
  key-string MyEigrpPassword123
  cryptographic-algorithm hmac-sha-256

int g0/0
 ip authentication mode eigrp 100 hmac-sha-256 キーチェイン名
 
#MD5バージョン
key chain キーチェイン名
 key 1
  key-string MyEigrpPassword123
  cryptographic-algorithm hmac-sha-256
  
int g0/0
 ip authentication mode eigrp 100 md5
 ip authentication key-chain eigrp 100 キーチェイン名

画像の表の内容を、コピペしやすいマークダウン形式で書き起こしました。

StackWiseとStackWiseVitrualとVSSの違い

項目StackWiseStackWise VirtualVSS (Virtual Switching System)
最大接続台数9台2台2台
ポート数(1台あたり)2つ機種による(通常のアップリンク等を利用)機種によるが専用ポートあり
使用ケーブル専用スタックケーブルイーサネットケーブル / 光ケーブル (VSL)VSL(専用線が基本)
対象機種Catalyst 3750/3850/9300などCatalyst 9300/9400/9500/9600などCatalyst 6500/6800など

スーパバイザエンジンの冗長動作モード

冗長動作モードRPR(Route Processor Redundancy)RPR+(Route Processor Redundancy Plus)SSO(Stateful Switchover)
startup-configの同期
ブート変数の同期
コンフィグレジスタの同期
VLANデータベースの同期
○○○
running-configの同期×○○
L2プロトコルンの同期
FIBテーブルの同期
××○
スイッチオーバー時間2分以上30秒以上0〜3秒

EIGRPにおけるK値

パラメータ意味(デフォルトのK値の重み)
Bandwidth(帯域幅)K1 = 1(使用)
Load(負荷)K2 = 0(デフォルトでは使用されない)
Delay(遅延)K3 = 1(使用)
Reliability(信頼性)K4 = 0(デフォルトでは使用されない)
MTUK5 = 0(実はメトリック計算そのものには使われない)
Hjson
redistribute ospf 1 metric 10000 10 255 1 1500
#<帯域幅> <遅延> <信頼性> <負荷> <MTU>

主要な DHCP オプション番号一覧

オプション番号オプション名説明・補足
3ルーター(デフォルトゲートウェイ)のIPアドレスクライアントが同一サブネット外へ通信するためのデフォルトゲートウェイを指定します。
6DNSサーバーのIPアドレス名前解決を行うためのDNSサーバーのIPアドレスを指定します。
43ベンダー固有情報(Vendor Specific Information)【追加】 Ciscoなどの無線LAN環境において、Lightweight AP(LAP)へWLC(無線LANコントローラ)の管理IPアドレスを通知するために使用されます。
661つのTFTPサーバーのIPアドレスIP電話機などのプロビジョニングやファームウェアのブートに使用するTFTPサーバーのIPアドレスを指定します。
82DHCPリレーエージェント情報(Relay Agent Information)リレーエージェント(ルーターやL3スイッチ)がDHCPパケットに付加する中継情報です。
150複数のTFTPサーバーのIPアドレス主にCisco IP電話機(CUCM環境など)向けに、複数のTFTPサーバーのIPアドレスリストを通知します。

ネットワーク設計で念頭に置く考え方

質問回答
今後、どんな軸を持つべきか・可用性
・拡張性
・セキュリティ
・管理のしやすさ
・性能
・コスト
これら従来から確立された軸は、引き続き普遍的に重要。これに加えて、自動化・運用効率、電力・持続可能性といった観点の重みが、AI時代において増している
どの軸を優先すべきか唯一の正解はなく、対象システムの目的・関係者の要求によって変わる。エンジニアに求められるのは、”固定の答えを持つこと”ではなく、”その都度、何を優先すべきかを見極める力

タイムスタンプの見方

Hjson
*May 14 16:17:20: %LINK-5-CHANGED: Interface FastEthernet0/0, changed state to administratively down
先頭記号システムクロックの同期状態詳細・説明
*未同期システムクロックの同期が行われていない状態(日付と時刻が正確ではない状態)
.同期ロスト(現在は未同期)システムクロックの同期を行ったことはあるが、現在は同期できていない状態
(なし)同期済み(正常)システムクロックの同期が行われている状態(日付と時刻が信頼できる状態)

ミラーリングの設定

▼SPAN

監視対象とモニターが同一のスイッチに接続されている場合

Hjson
Switch# configure terminal
Switch(config)# monitor session 1 source interface gigabitEthernet1/0/1 both
Switch(config)# monitor session 1 destination interface gigabitEthernet1/0/10
Switch(config)# end

▼RSPAN

監視対象とモニターが異なるスイッチに接続されている場合

Hjson
SW1,2# configure terminal
SW1,2(config)# vlan 999
SW1,2(config-vlan)# remote-span
SW1,2(config-vlan)# end

SW1,2# configure terminal
SW1,2(config)# interface gigabitEthernet1/0/24
SW1,2(config-if)# switchport mode trunk
SW1,2(config-if)# switchport trunk allowed vlan add 999
SW1,2(config-if)# end

SW1# configure terminal
SW1(config)# monitor session 1 source interface gigabitEthernet1/0/1 both
SW1(config)# monitor session 1 destination remote vlan 999
SW1(config)# end

SW2# configure terminal
SW2(config)# monitor session 1 source remote vlan 999
SW2(config)# monitor session 1 destination interface gigabitEthernet1/0/10
SW2(config)# end

▼ERSPAN

監視対象とモニターが異なるL3ネットワークに接続されている場合

Hjson
SW1# configure terminal
SW1(config)# monitor session 1 type erspan-source
SW1(config-mon-erspan-src)# source interface gigabitEthernet1/0/1 both
SW1(config-mon-erspan-src)# destination
SW1(config-mon-erspan-src-dst)# erspan-id 10
SW1(config-mon-erspan-src-dst)# ip address 198.51.100.2
SW1(config-mon-erspan-src-dst)# origin ip address 192.0.2.1
SW1(config-mon-erspan-src-dst)# no shutdown
SW1(config-mon-erspan-src-dst)# end


SW2# configure terminal
SW2(config)# monitor session 1 type erspan-destination
SW2(config-mon-erspan-dst)# destination interface gigabitEthernet1/0/10
SW2(config-mon-erspan-dst)# source
SW2(config-mon-erspan-dst-src)# erspan-id 10
SW2(config-mon-erspan-dst-src)# ip address 192.0.2.1
SW2(config-mon-erspan-dst-src)# no shutdown
SW2(config-mon-erspan-dst-src)# end

ACLの番号範囲

ACLの種類通常範囲拡張範囲特徴・フィルタリング条件
標準ACL (Standard ACL)1 ~ 991300 ~ 1999・送信元IPアドレスのみで判定する
・宛先に近い場所(出口付近)に適用するのが一般的
拡張ACL (Extended ACL)100 ~ 1992000 ~ 2699・送信元/宛先IPアドレス、プロトコル(TCP/UDP/ICMPなど)、ポート番号など詳細な条件を指定可能
・送信元に近い場所(入口付近)に適用するのが一般的
名前付きACL (Named ACL)なし(名前で管理)なし(名前で管理)・数字の代わりに**任意の文字列(名前)**で管理する
・内部的には標準または拡張の性質を持ち、ルールの途中挿入や削除(行単位の編集)が簡単に行えるため実務でよく使われる
タイトルとURLをコピーしました