【CCNA】オートネゴシエーションとかSpeed/DuplexとかMDIとかLAG、ケーブルについてまとめてみた

# はじめに
CCNAを復習したのでメモります。途中。

# LAGとは(リングアグリゲーション)
* LAG(リングアグリゲーション)は一般的な呼び方で、イーサチャネル(シスコ用語)、チャネル、やチーミング(サーバー側)や様々な呼び方がある
* ポートに接続された複数のLANケーブルを1つの論理リンクとして構成する機能


# 参考
https://network.oreda.net/device/switch/lag.html#%E3%83%AA%E3%83%B3%E3%82%AF%E3%82%A2%E3%82%B0%E3%83%AA%E3%82%B2%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A7%E8%A4%87%E6%95%B0%E3%81%AE%E7%89%A9%E7%90%86%E5%9B%9E%E7%B7%9A%E3%82%92%E6%9D%9F%E3%81%AD%E3%82%8B_lag
https://www.atmarkit.co.jp/ait/articles/1107/19/news124.html

## LAGの呼び方
[リンクアグリゲーションやLACPとは何ですか？利用方法も教えてください。](https://kb.netgear.com/ja/000051185/%E3%83%AA%E3%83%B3%E3%82%AF%E3%82%A2%E3%82%B0%E3%83%AA%E3%82%B2%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%84LACP%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B-%E5%88%A9%E7%94%A8%E6%96%B9%E6%B3%95%E3%82%82%E6%95%99%E3%81%88%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84)

いろんな呼び方がある

* LAG=リングアグリケーション=ポートチャネル=イーサチャネル(シスコ)

**イーサチャネルはCisco独自用語で一般用語ではリンクアグリゲーションと呼ばれています。**

## LAGの種類
* スタティック 
* ダイナミック
  - LACP=標準化された規格
* ダイナミック
  - PAgP=シスコ独自のプロトコル
  - 他社のスイッチと接続する事も出来ます

https://www.atmarkit.co.jp/ait/articles/1107/19/news124.html

* イーサチャネルはサーバーと接続する時も使え、サーバー側ではチーミングやbondingと呼ばれる事もあります。
* サーバー側でLACPをサポートしている事もありますが、サポートしていない場合はonで固定にする必要があります。チーミング、bondingにはActive/Standbyで動作するモードがあり、このモードでは1つのインターフェースだけ利用するため、スイッチ側でイーサチャネルの設定は不要です。
* 物理リンクは、すべて同じ速度と二重モードにする必要
* AutoとAuto、PassiveとPassiveの組み合わせでは、イーサチャネルを構成することはできません

## LAG設定方法
https://beginners-network.com/cisco-catalyst-command/channel-group.html

```
(config)# interface interface-id
// mode 以下で　スタティック or ダイナミックを指定する
(config-if)# channel-group group-number mode [ auto | desirable | on | active | passive ]
```
* on
  - スタティック設定
  - 物理ポートでネゴシエーションせずに強制的にEtherChannelを形成する手法
* activeとpassive
  - ダイナミック設定(LACP=シスコ独自のプロトコル)
* autoとdesirable
  - ダイナミック(PAgP)

**あまりPAgPは使われないみたい**

https://beginners-network.com/link_aggregation.html

* ダイナミックは物理ポートでPAgPやLACPプロトコルによりネゴシエーションしてEtherChannelを形成する手法
* 固定で設定する場合は常に設定したインターフェースはリンクアグリゲーションに組み込まれますが、
* 自動設定にしておくと対向装置間でLACPというプロトコルを使ってネゴシエーションした後、可能なインターフェースだけ組み込まれます。
* 又、スイッチがスタックされており、スタックを跨ってイーサチャネルを構成する時はon、又はLACPを使う必要があります。

例

```
//チャネルグループ1に0/1と0/2を強制的に追加
Cisco(config)# interface gigabitethernet0/1
Cisco(config-if)# channel-group 1 mode on
Cisco(config-if)# exit
Cisco(config)# interface gigabitethernet0/2
Cisco(config-if)# channel-group 1 mode on
Cisco(config-if)# exit
Cisco(config)#
```

イーサチャネルを構成した後はポートチャネルに対して物理インターフェースと同様の設定が出来ます
ポートチャネルインターフェイスの設定を変更すると、そのポートチャネルインターフェイスに関連付けられているすべての物理インターフェイスに反映されます

```
Cisco(config)# interface port-channel 1
Cisco(config-if)# switchport access vlan 10
Cisco(config-if)# exit
Cisco(config)#
```

## LAGのロード・バランシング
【ロードバランシング方式】
EtherChannelはロードバランシング（負荷分散）をサポートしています。
(config)#port-channel load-balance {src-ip | dst-ip | src-dst-ip | src-mac | dst-mac | src-dst-mac}

## LAGのモード
【PAgPのモード】
* desirable
  - 自身からイーサチャネルを構成するためネゴシエーションします。
* auto	        
  - 自身からはイーサチャネルを構成しようとせず、**相手からネゴシエーションがあった場合のみ構成します**。

【LACPのモード】
* active	        
  - 自身からイーサチャネルを構成するためネゴシエーションします。
* passive	        
  - 自身からはイーサチャネルを構成しようとせず、**相手からネゴシエーションがあった場合のみ構成します**。

よって、auto-auto passive-passiveだとLAGが設定されなくなる

## L３のLAG
・「no switchport」コマンドを使用する
「no switchport」コマンドは、インターフェースをレイヤ3モードにするコマンドです。

## 最大個数
EtherChannelでまとめられる最大数は最大で8つ

## LAGの確認コマンド
【EtherChannelの確認】
EtherChannelを確認する主なコマンドは以下の通りです。
・show etherchannel
・show etherchannel summary
・show interface port-channel
・show etherchannel port
・show {pagp | lacp} neighbor
・show {pagp | lacp} counters


# 通信速度(Speed)、通信モード(全二重/半二重)のオートネゴシエーションとは
https://www.n-study.com/layer2switch/autonegotiation/

ポートの**通信速度、通信モード(全二重/半二重)**を自動的に検出して設定する機能。
**デフォルトでオートネゴシエーションの設定有効**

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/273424/febd44d4-5da9-2169-c428-8acbc2b93e34.png)

スイッチA 
Fa
|
Gi
スイッチB

な場合、Faに合わせられる。STPのパスコストなどのときに考える必要あり。
だが、実務で対向が異なる速度のポートなんていう場面はあんまりないかも？

## 全二重と半二重

･半二重通信
半二重通信は送信ﾜｲﾔと受信ﾜｲﾔを切り替えながら通信する方式です｡
片方のﾜｲﾔを使用している場合もう片方は使用できないため､複数のﾃﾞﾊﾞｲｽが同時にﾃﾞｰﾀを送信するとｺﾘｼﾞｮﾝが発生します｡
半二重通信を行うﾃﾞﾊﾞｲｽには､ﾊﾌﾞがあります｡**コリジョンが発生してしまうのでCSMA/CDが使われる**

･全二重通信
全二重通信は送信ﾜｲﾔと受信ﾜｲﾔを別々に使用して通信する方式です｡
送受信を同時に行えるため､複数のﾃﾞﾊﾞｲｽが同時にﾃﾞｰﾀを送信してもｺﾘｼﾞｮﾝは発生しません｡
全二重通信を行えるﾃﾞﾊﾞｲｽには､ｽｲｯﾁやPCなどがあります｡

## オートネゴシエーションの失敗(片方AUTOで片方固定した場合に通信モードがおかしくなる)
* 片方AUTOで片方固定した場合に、片方固定のポートからFLPが送信しなくなるので、AUTOのほうがどの通信モードを選択すればよいかわからなくなる**(通信速度は電気信号でわかる)**ので**自動で半二重通信になる**。その結果、両方のポートで全/半で不一致になり

**速度は電気信号から合わせることができる。が、通信モードがわからなくなり、自動で半二重になってしまう**
**片方の通信モードが固定モードで、もう片方がオートネゴシエーションが有効**の場合おかしくなる

## 全二重(Full Duplex)/半二重(Half Duplex)の不一致でどうなる 
**あるときは通信できて、あるときは通信できなくなる。リンクは正常にアップする**

## オートネゴシエーションを失敗しないために
対向のポートで二重モードの設定をあわせておくべし

**対向のポート同士でAUTO設定にする**
**対向で全/半を一致させる**

## 現在
**CDP、LLDPなどでも全二重/半二重の通信モードの情報を交換できるようになり**不一致は起こりにくくなったらしい

## Ciscoのスイッチ
デフォルトでオートネゴシエーションの設定有効
* 2重モードの設定
  - duplex {auto(オートネゴシエーション)|full|half}
* 速度の設定
  - speed {10 | 100 | 1000| auto(オートネゴシエーション)}


# 光ケーブル
https://www.itbook.info/network/phy02.html

## LCコネクタとSCコネクタ
* コネクタの形状。主に日本では2つ
* 現在主流のコネクタでコネクタが小さいため、機器の多くのポートを実装することができます。

光ファイバーケーブルは大きく「SMF」（Single Mode Fiber）と「MMF」（Multi Mode Fiber）の2種類に分けられます。
SMFは、単一の伝搬モード（光の通り道）を提供するケーブルです。分散しにくいため長距離伝送に向いています。
MMFは、複数の伝搬モード（光の通り道）を提供するケーブルです。光が分散しやすいため長距離伝送に向いていません。
ただし、シングルモード用の光トランシーバ（光信号を電気信号に変換する機器）はマルチモード用の光トランシーバよりも高価なため、シングルモードの方が導入コストが高くなります。

・1000BASE-LX：2芯のケーブルで送受信する。伝送距離はマルチモードケーブルで最大550m、シングルモードケーブルで最大10ｋｍ
・1000BASE-SX：2芯のケーブルで送受信する。伝送距離はマルチモードケーブルで最大550m。


# LANケーブル
## まとめ
LANケーブルといえば**ツイストペアケーブル**で**UTP**で**ストレート**なケーブルが使われている

## ケーブルの種類
* LANでは一般的に**ツイストペアケーブル**


## ツイストペアケーブルの分類
* UTP(シールド保護なし)とSTP(シールド保護あり)
* 一般的なオフィスではUTPがが利用
* STPは工場などや特殊な環境で使用

## ツイストペアケーブルの種類
* ストレートケーブルとクロスケーブル
* 現在は各機器に自動判別機能（AutoMDI/MDI-X）があるため、ストレートケーブルで統一することが主流

## ツイストペアケーブルのカテゴリ
* 5 5e 6 6e(6A) 7 7A
* 通信速度が1Gpbsを超えてくるカテゴリ５e以降。6から10G
* cat5 cat6eとか呼ばれる

## ツイストペアケーブルのコネクタ
* 両端にRJ-45という規格のコネクタがついている

# ツイストペアケーブルのまとめ
ツイストペアケーブルとは**UTP(シールド保護なし)でストレートケーブル**のこと


# MDIとMDI-X
MDIとMDI-Xは物理ポートのタイプ


## サーバーやPC
MDI

## スイッチ
MDI-x

ciscoでは`auto mdix`はデフォルトで有効であるため、show running-configに表示されません。
（no auto mdixの場合は表示される。)

## どう接続したらいいの
MDIとMDI-Xのタイプでストレートケーブルとクロスケーブルを使い分ける必要がある

**送信は受信にデータを送らなければいけないのでMDIはMDI-Xに接続しなければならない**

https://www.infraexpert.com/study/ethernet3.html

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/273424/07e058ad-82dc-94f1-974d-e8124ad302aa.png)

(サーバー)MDI  --ストレート-- MDI-X(スイッチ)
(スイッチ)MDI-X --クロス--   MDI-X(スイッチ)
(サーバー)MDI --クロス--  MDI(サーバー)

図のように送信/受信が対向で一緒になってしまうので
**同じポートタイプの場合はクロスケーブルが必要**　


## AUTO MDI/MDI-X
**ポートタイプを自動で判別する機能がスイッチに実装**
スイッチ同士などでもストレートケーブルで接続できりょうになった

今は
**同じポートタイプの場合でもストレートケーブルで接続できるようになった**　


# ネットワーク
##  OSI参照モデル
* OSI参照モデルで各層に通信に必要な情報を持たせるルールを作って、そのルールに沿って各機器、各ソフトウェアがその情報を取得するようにすることで通信して異なる機種、ソフトウェアでネットワーク越しに通信をすることができる。ISOが策定
* 各プロトコルもそういうイメージ

## ネットワークでの通信
* 送信側でカプセル化して受けっとった側で非カプセル化
* データリンク層ではトレーラと呼ばれるエラーチェック用の情報を付加

## PDUの呼び方
* トランスポート層
  - セグメント
* ネットワーク層
  - パケット
* データリンク層
  - フレーム

## イーサネット
* LANの規格
  - 他にもトークリング、FDDIなど
* OSI参照モデルの**物理層とデータリンク層**を規定
* イーサネット規格をLANケーブルやNICだったりが実現することで


# CSMA/CD
* **イーサネットで採用**されているアクセス制御方式
* 伝送路が空いているか確認、衝突の検出
* 半二重通信時代(同軸ケーブル、ハブ)のもの。全二重通信(ツイストペアケーブル、スイッチ)ではCSMA/CDは使わない 

## 半二重通信
* **帯域の半分しか使用できない**
* 送信、受信を同時にできない方式。主に同軸ケーブル時代の方式でその場合はCSMA/CDで制御していた
* リピータハブは送信と受信が同時にできないのでリピータハブ(ハブ)を使う場合は半二重通信になる

## 全二重通信
* UTPのツイストペアケーブルを使って、スイッチングハブを用いた送信、受信を同時に行う
* 双方で全二重通信をサポート
* スイッチで接続
* 

# コリジョン
https://www.otsuka-shokai.co.jp/words/collision.html
コリジョン（Collision）は「衝突」の意味。イーサネットや無線LANで複数の端末が送信し、データが衝突する現象を指す。旧式のイーサネット規格では、端末同士を接続するときに1組の通信路で双方向の通信を行う半二重通信のため、送信と受信を同時に行うことができない。送信と受信をその都度切り替えて行うので、端末がお互いデータを送信してしまうと衝突する可能性が高くなる。

コリジョンを避けるために、「CSMA/CD（Carrier Sense Multiple Access/Collision Detection）」が開発された。2台以上の端末が同時に電気信号を送ると、「CD（衝突検知）」が、ケーブル上の高電圧レベルを検出し、コリジョンと見なす。コリジョンを検出すると、全端末は通信を一定時間停止し、待ち時間を置いて再送する。

**現在のイーサネットでは、LANスイッチを経由して複数の端末が同時に送受信する全二重通信が一般的で、同時に通信できるため、「CSMA/CD」は不要となった。**

ハブは半二重通信方式を行うので、送信と受信を同時に行えません。
よって、ハブを使用しているPC-AとPC-Bの環境ではコリジョンが発生する恐れがあります。

スイッチは全二重通信方式に対応しています。
全二重通信方式では同時に送受信することが可能なので、スイッチに接続されているPC-C・D・E・Fではコリジョンが発生することはありません。

# ネットワーク機器
リピーターとハブとスイッチ

## リピータ
電気信号を増幅する、初期のイーサネットにおいてケーブルを延長するために使われていた

## ハブ(リピーターハブ)
* **すべてのポートに送信、信号増幅**
* **スイッチングハブはスイッチの機能がある**

## ブリッジ、スイッチ(L2スイッチ)
### スイッチ
* ポートの数が違う、つながっているポートの先のMACアドレスを記憶して、
* MACアドレステーブルを使用してフィルタリング

### スイッチのフラッディング
該当するMACアドレスがテーブルにない場合は受信したポート以外からフレームを転送。ブロードキャストフレーム、未学習のマルチキャストフレーム、宛先MACが未学習のユニキャストフレーム


## L3スイッチ
* ルータ
  - ソフトウェアで処理(低速)
* L3スイッチ
  - ハードウェアで処理(高速)

# TCP/IPプロトコル・スタック
* TCPとIPを中心とするプロトコルの集まりでOSI参照モデルの概念を実体化したプロトコル郡というイメージ

# IPアドレス
## クラス A B C
* クラスA
  - 先頭が0
  - 10.0.0.0 ~ 10.255.255.255
* クラスB
  - 先頭が10
  - 172.16.0.0 ~ 172.31.255.255
* クラスC
  - 先頭が110
  - 192.168.0.0 ~ 192.168.255.255

上記以外の範囲のIPがグローバルIP

# サブネットワーク
ブロードキャストドメインの分割、セキュリティ的に良い

# 参考
[ストレートケーブルとクロスケーブル](https://note.cman.jp/network/lan_cable_cross.cgi)
https://prebell.so-net.ne.jp/tips/pre_17112101.html