Dramsuko_wiki

Network

目次

サブネットマスク

サブネットマスク計算サイト

サブネットマスク、仕組み

サブネットマスクの算出方法
CIDR表記10進数表記2進数表記
/24255.255.255.011111111.11111111.11111111.00000000
/25255.255.255.12811111111.11111111.11111111.10000000
/26255.255.255.19211111111.11111111.11111111.11000000
/27255.255.255.22411111111.11111111.11111111.11100000
/28255.255.255.24011111111.11111111.11111111.11110000
/29255.255.255.24811111111.11111111.11111111.11111000
/30255.255.255.25211111111.11111111.11111111.11111100
/31255.255.255.25411111111.11111111.11111111.11111110
/32255.255.255.25511111111.11111111.11111111.11111111

OSI(Open System Interconnection)参照モデル,TCP/IP

例・その他IP suiteAppleTalk?
suite
TCP/IP
No名称
7アプリケーション層アプリケーション層
6プレゼンテーション層
5セッション層
4トランスポート層トランスポート層(L4)
3ネットワーク層インターネット層(L3)
2データリンク層リンク層(L1/L2)
1物理層RS-232C
100BASE=TX

語句

  • IP(Internet Protocol)
  • TCP(Transmission Control Protocol)
  • ARP(Address Resolution Protocol)
    • MAC Addressを知るためのプロトコル
    • IP に対応するMACアドレスをARPにより解決する。
    • ルーターではイーサネットヘッダを順次付与していく
  • ICMP(Internet Control Message Protocol)
    • Ping に使用されるprotocol。

パケット・キャプチャ

ソフト

  • Wireshark
  • Microsoft Message Analyzer
  • PacMon?

キャプチャーする場所

PCでキャプチャー

  • PCに届いたパケットをストレージに保存していくこと。
  • 保存したデータ
    • キャプチャーデータ
    • キャプチャーファイル

パケット解析

  • キャプチャーデータに対して行う
  • 可能なら保存したデータで行う方が望ましい
    • キャプチャーはパソコンにかかる負荷が大きく、
      解析しながらだとパケットを取りこぼす恐れがある
  • Tshark
    • コマンドラインで実行できるパケットキャプチャーソフト
    • 軽い
    • 1Gbps を超える様ならTSharkが望ましい

LANケーブルに流れるパケットのキャプチャー

  • リンクを分岐してPCで取り込む
    • この方法はできない
    • 自分宛以外のパケットを受け取れないため
    • LANケーブルは分岐できる構造にない
    • どうしても行うためには、
      • 「プロミスキャスモード」で動くネットワーク処理プログラム
  • プロミスキャスモード
    • NICに届いたすべてのパケットをパケットキャプチャーソフトに転送する
    • ソフト名:Npcap (Wiresharkに入ってる)

分岐

  • ミラーリング, フラッディング機能を持つスイッチを使うことで解決
    (普通のスイッチでできる)
  1. ミラーリング
    • ユーザーが指定したポートの通信を特定のポートにコピーする機能
  2. フラッティング
    • スイッチのどのポートに届いたパケットもすべてのポートに転送する機能

取り込みたいパケットを考える

  1. どこでパケットキャプチャーを実行すべきか
  2. パケットキャプチャーソフトをインストールできるか
    • PC Aでトラブル発生
    1. パケットキャプチャーソフトをインストールできる
    2. パケットキャプチャーソフトをインストールできない
      • PC AにつながっているL2スイッチで分岐する
      • 徐々に上流に上がって分岐する

フィルター(Wireshark)

Wireshark(使い方とインストール)

  • 対応プラットフォーム
    • Windows
    • macOS
    • Linux
  • 無償
  • 前身は「Ethereal(イーサリアル)」
  • 2019年2月 Ver 3.0.0
  • Install
    • 全てデフォルトのままでOK
    • Npcap も一緒にインストールしておく
      (デフォルトのままでインストールする)

基本的な使い方

  • インターフェースの選択
    • 右側の折れ線グラフがトラフィックの状況
    • ダブルクリックで選択するとキャプチャが開始される
    • キャプチャの解析は一旦セーブしてから行うと良い
  • ボタン(左から)
    1. キャプチャーの開始
    2. キャプチャーの停止
    3. キャプチャーのやり直し
    4. オプション設定画面の表示
    5. ファイルを開く
    6. セーブする
    7. 閉じる
    8. 読み直す
  • 3つの画面領域(上から)
    1. パケットリスト
      • キャプチャー開始後、パケットの情報が1行ずつ追加されていく
      • 項目(左から)
      1. 時間
      2. 送信元/宛先
      3. プロトコル
      4. パケット長
      5. 概要
    2. パケットディテール
      • 選択したパケットの詳細が表示される
    3. パケットバイト
      • 選択したパケットのパケットバイトが表示される

フィルター

  • よく使う条件式
    • ip.addr == 192.168.0.1
    • tcp.port == 80
    • ip.addr == 192.168.0.1 and tcp.port == 80
    • ip.src == 192.168.0.1 and ip.dst==192.168.0.254
    • !(ip.addr==192.168.0.1)
    • プロトコル名(arp, http, dhcp 等)

https 通信で暗号化方式の違いを確認する例

  • TSL1.2 と 1.3 では、TLS1.2 の方が通信が多い
  • 手順
    1. Wiresharkを起動し、キャプチャーを開始
    2. ブラウザでhttpsサイトへアクセス
    3. キャプチャーの終了。保存
    4. 対象のIPアドレスでフィルター
      • ip.addr==123.123.123.123
    5. パケット・ディテールは畳まれているため、
      クリックすると開ける

3ウェイハンドシェークの確認

TCPのシーケンス(流れ)

  1. コネクションの確立
  2. データのやり取り
  3. コネクションの終了
  • コネクションが確立してからデータのやり取りが始まる。
  • データのやり取りが終わるとコネクションは終了する

語句

  • コネクション
    • 確実に通信できるように確保する仮想的な通信路
  • ハンドシェーク
    • コネクションを確立するために通信相手とやりとりすること
  • 3ウェイハンドシェーク
    • コネクションを確立するために、通信を開始する機器と送信相手の間でパケットを3回やり取りする。

3ウェイハンドシェイク

  1. 「通信を開始する機器」が
    SYN(同期を表す)というTCPパケットを
    通信相手に送る
  2. 「通信相手」は、
    「SYN」と「ACK(承諾を表す)」を
    送信元に返す
  3. 「通信を開始した機器」が、
    「SYN」,「ACK」のTCPパケットを受け取ったら
    通信相手に
    ACKのTCPパケットを送る。
  • 以上でコネクションが確立

WireShark?で確認

  • どこかにアクセスする(httpとかWeb」とか)
  • キャプチャーを取り保存する。
  • 保存したファイルをWireShark?で開く。
  • tcp などでフィルター
  • さらに IP address と組み合わせてフィルター
    • tcp and ip.addr==123.123.123.123
  • 「SYN」,「SYN,ACK」,「ACK」の確認

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-08-13 (火) 13:00:53 (61d)