全然違うSWに入って設定変更した

## はじめに
本番環境などでやらかしてしまった人Advent Calendar2024です！
早速朗報ですが、2024年はなんとめでたいことに

**やらかした人が少ないみたいです!**

このアドカレの投稿数が少ないというのは、やらかしが観測されなかった1年だったのでしょう。皆さん素晴らしいです！！

そんなレアな今年のやらかしを紹介します。

- ずばり、エピソードの概要
    - 作業対象ではないSW（ネットワークスイッチ）にログインして設定変更をしました
    - なんなら、そもそも設定変更の要件はなく、設定確認のみ行うはずでした
    - いったいなぜ私は間違った方のSWにログインして、しかも要らぬ設定変更を施したのでしょう
- なぜこのエピソードを共有するのか
    - どんな間違いが起きたのか整理しておくことで自分への戒めになる
    - 経験から学んだことを活かして今後の成長の肥やしにする
    - この失敗をしてしまった直後、落ち込む私にリーダーがそっと（チャットで）差し出してくれたのがこちら👇

https://qiita.com/yonex/items/204a5f41d1b40efe305e

いつかの誰かの心が軽くなりますように。そして同じ過ちを犯してしまい、眠れない夜を過ごすことになるエンジニアが一人でも減りますように🎄🌙
私は[@yonex](https://qiita.com/yonex)さんのおかげで昼も夜もぐっすり眠れました。

## 問題の発生
あの日、私は同僚の運転で現場に行った。二回目だった。

なぜならその現場は一回目に挑戦したとき、環境起因で切り戻しとなり、実質切り替えに失敗していたからだった。

一回目当時原因となっていた問題も解決し、残りの拠点の切り替えはうまくいっていた。気付けばプロジェクトも終盤。リトライとなったこの拠点は最後の切り替え作業拠点だった。

もう月末も近い。ここが終われば無事にプロジェクト完了だ。
### 具体的な状況と問題の詳細
- やるべきこと
    - 作業対象機器にログインしてログとってshowコマンド打つだけ
![WAN.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3941615/16721f96-1cd3-21f1-2c5d-0412b3aef49a.png)

- やらかしたこと
    - 作業対象ではない機器にログインして設定変更
 ![WAN (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3941615/095de032-8aff-5a44-087e-f72735da7a07.png)

まず初っ端からアウトです。
### 早速何も疑わずに誤ったSWにコンソールケーブルを接続
- 違和感①なんか変
    - ログインusernameが求められないなあ
- 違和感②なんか変
    - 既存configと違うなあ
- 思い込み
    - そう言えば一回目の切り戻し対応のとき再起動したから、そのせいで設定がロールバックしたのかもしれない。**いや、そうに違いない。**
- 違和感③なんか変
    - SWにテプラが貼ってあるけどIPアドレスが違うなあ
- 違和感①②③と満載なのにもかかわらず、想定と違う作業の許可取り📞
    - とにかく終端装置とSW間のネゴが違うから設定を変えないといけない！
    - お客様担当者に許可をもらって設定変更！
```
hostname(eth-1)#speed-duplex 100-full
```
   - 事後報告
        - 帰ってからお客様の偉い人に報告
        - ワイ「設定変更しときました」
        - 偉い人「ん？違うSW入ってない？」

::: note info
**終端装置**について
モデムとか光コンバータとかメディアコンバータ、メディコン、M/Cなどと表現します。今回はメディコンのことを指しています。光ケーブルと同軸LANケーブルへの変換、光信号を電気信号に変換する役割を担います。回線の品目によって終端装置の機種やスペックが異なります。今回は終端装置の対向機器のインターフェースは「100M/fullの固定」で設定しなくてはいけないものでした。そのため設定変更の必要があると判断したのです。
:::

## 問題が発生した原因
- マインド
    - とにかく過信
    - とにかく思い込み
    - 自作の手順書で自ら作業するも、自作の手順書をほぼ見ていないという傍若無人のワンマンプレー
- オペレーションスキル
    - 本当は終端装置（メディコン）から下流を辿らないといけないのに、辿ってない
    - 切替中は回線断となっているのでその間リンクの状態がダウンとなりLEDが消えていることを確認しないといけなかったのに、確認してない
    - ログインしたらまずはホスト名、IPアドレスを確認しないといけないのに、照合してない
- 環境
    - ホスト名が似てる、一文字違いだった
    - 他の拠点のSWと間違えて繋いだSWの機種が一緒でこの拠点だけ違う機種だった

## 影響と対応
### 問題がネットワークや業務に与えた影響
なんと運のいいことに、影響が無かった。無かったからこそすぐに気付かなかった。呑気に同僚と町中華でランチもできた。終端装置とSW1とSW2の間のSpeed/Negoが100/full一致しておりリンクが安定していたんだろう。WANの回線速度も最大100Mbpsだったのでどこもボトルネックにならず、不安定にもならず、何とか耐えた。
### 問題解決のために取った対応策
 二日後。また私は現場にいた。ここに来るのは三回目だ。慣れたもんだ。
 現場の立ち合いの方は、なぜ私がここに三回も足を運んでいるのか訳も知らず、気さくに出迎えてくれる。すまない。三回目の今日は、一昨日の己の愚かなミスをなかったことにするために来たんだ… 。私はSWに以下のコマンドを入れた。間違えないように指差し呼称をして👉
```
hostname(eth-1)#speed-duplex auto
```

## 教訓と学び
### このエピソードから得た教訓
自分は確かにおっちょこちょいなところはあるけれども、仕事でこんなに冷や汗をかくようなミスをするのは初めてでした。
「やらかしかねない」と常に自分を疑いの目で見ること「こいつはやらかしかねない」と周りの人に目を光らせてもらうこと、当たり前のことを怠らないように今後も作業にあたります。
いい話にするつもりはないのですが、お客様からお𠮟りを受けなかったのは、私の日頃の付き合いや姿勢があってのことで「信頼関係が築けているんだね」と仲間に行ってもらえたのはとても救いでした。
当たり前なんですが普段から真面目に仕事に向き合うことの大切さを再認識しました。「謝るのは営業の仕事だから」と言い切ってくれた営業さんも、本当にかっこよかったです。
**社内報告を踏み倒そうとしてすみませんでした！！！**

### 同じミスを防ぐための対策
グループのメンバーの前で洗いざらいすべて報告しました。
『問題が発生した原因』に記載した**本来はこうすべきだったのに**の部分を当たり前にできるよう、本当に頑張ってください。
- 手順書に従う
- 二人で行ってるなら作業者と統制者は別に設ける
- ワンマンプレーをしない（手順書作成者：私｜作業者：私）
- 物理ネットワークの上流を辿る、下流を辿る
- リンク状態・LEDの状態（色/点灯/点滅）を確認する
- ホスト名、IPアドレスを確認する
- 「想定と違う」「違和感を覚えた」ときの判断ができるのは誰なのかエスカレーションパスを明確にする
- チェック項目に抜け漏れがないか体系化された資料と照らし合わせたり事前レビューをしたりして確認する
- 事例を仲間と共有する
## まとめ
- エピソードの振り返り
何の疑いも持たず、一回入ってる現場だしと余裕こいて全然違うSWに接続してました。しなくていい設定変更も施しました。
当日に気づいて翌々日に再度オンサイトして戻しました。
気付いた以降から、お客様にも、社内にも、逐一報告しました。大事！
- 今後の改善点と展望
これからも自分のやらかしは、闇に葬らず晒して次の誰かの肥やしにします！やらかさないぞ！
みなさんも葬ってるやらかしがあったら白日の下にして、供養しましょう！

- 参考にした元気の出るやらかしアドベントカレンダー

https://qiita.com/advent-calendar/2023/yarakashi