2022年12月13日開催「SORACOM UG Online #14 ~ ソラカメ API & ゆく年くる年」で、ソラコム加納(kanu)が発表した資料です。
私の考えるSORACOM Peek の使いどころ 3 選SORACOM UG Online #14 〜 ソラカメ API & 行く年来る年 〜Dec. 13, 2022株式会社ソラコムCustomer Reliability Engineer加納 峻佑 (kanu)
View Slide
自己紹介加納 峻佑 (kanu)Customer Reliability Engineer・今年の抱負体重を 10 kg 落とすこと。今マイナス 8 kg まで来ています。・好きな SORACOM サービスSORACOM BeamSORACOM NapterSORACOM Peek
SORACOM Peek とは?SORACOM の SIM を利用した通信時に IP パケットをキャプチャするサービスです。
キャプチャしたパケットを確認する
パケットキャプチャは敷居が高い・・・!キャプチャできた!で・・・?こんなふうに感じている方もいるかも
SORACOM Peek の使い方 3 選
その 1どの通信のデータ量が多いのかを確認する
その 2データが SORACOM プラットフォームまで届いているのかどうかを確認する
サーバーまでデータが届かない!SORACOM までは届いているの?
こんな方法もありますSIM のデータ通信量を確認する。 (Unified Endpoint にデータを送信している場合は) Harvest Data で確認する。
その 3処理がどこで停止しているのかを確認する
やりたかったことScapy というツールを利用してSORACOM Harvest Data にTCP でデータを送信したい
Scapy とはパケットを生成・送信したりできるツール
例えば、sr1(IP(dst="pong.soracom.io")/ICMP())で pong.soracom.io に ping できる。
やりたかったことSORACOM Harvest Data との間で、3 ウェイハンドシェイクで TCP コネクションを確立して、データを送信して、FIN パケットを送信して TCP コネクションを終了する。
スクリプト
届かない!!
パケットキャプチャ結果の抜粋①、② は SORACOM Harvest Data のエントリポイント (harvest.soracom.io) の名前解決です。③ はデバイスから SORACOM Harvest Data への SYN の送信です。④ は SORACOM Harvest Data からデバイスへの SYN/ACK の返却です。ここまでは OK。問題は ⑤ です。デバイスから RST パケットを送信して TCP コネクションを強制終了している。
原因は OS の介入iptables で無理やり RST パケットを送信できないようにするという漢気溢れる回避策
無事送信できました
私は Peek をこう使ってデバッグしたよ!という方、是非教えてください。なお、今日の内容は SORACOM AdventCalendar 2022 13 日目の記事です。https://qiita.com/kanuu0504/items/a56d95ba6623117e9c48
いっちょパケットキャプチャしてみっか!
IoTの「つなぐ」を簡単にYou Create. We Connect.