読者です 読者をやめる 読者になる 読者になる

Keijir Blog

やっぱハワイ行きたいよね

Wireshark(コマンド)の使い方まとめ

ネットワークに流れているパケットデータを表示して解析できるソフト

大量のパケットファイルを解析する際には、コマンドでの解析が欠かせない。

使い方を簡単に解説。

Wiresharkで使えるコマンド一覧

capinfos
dumpcap
editcap ←これを解説
mergecap←これを解説
rawshark
text2pcap
tshark ←これを解説
wireshark


コマンドのヘルプ表示(option -h)

$ tshark -h

インターフェースの表示 (option -D)

$ tshark -D

パケットのキャプチャ

Ctrl+Cまでパケット採取 10MBづつファイル作成

$ tshark -i 1 -n -B 1024 -b filesize:10240 -w filename.pcap

パケットのキャプチャ(リングバッファ)

Ctrl+Cまでパケット採取 10MBづつファイル作成 最新1000ファイル保持

$ tshark -i 1 -n -B 1024 -b filesize:10240 -b files:1000 -w filename.pcap

※2012/06/20追記 繰り返しキャプチャ

ファイルの分割

$ editcap filename.pcap newfilename -c paketsize

ファイルの結合

$ margecap -w outputfilename.pcap inputfile1 inputfile2 ...

パケット表示 (option -r)

$ tshark -r filename.pcap

パケット表示のフィルタリング (option -R)

$ tshark -r filename.pcap -R "Display Filter"
よく使うDisplay Filter の例
IPアドレス
 ip.addr==192.168.1.1
ポート番号
 tcp.port==80
resetフラグ
 tcp.flags.reset==1
ストリーム番号
 tcp.stream==123
Frameでバイトを指定(追記)
  frame[XXXX:YYYY] == ZZ:ZZ:ZZ.....

参考:Display Filter Reference
Wireshark(Ethereal)のDisplay Filter


パケット表示カスタム (option -o)

$ tshark -r filename.pcap ^
-o column.format:""Frame_Number","%Cus:frame.number","Frame_Time","%Cus:frame.time_relative", ^
"IP_src","%Cus:ip.src","IP_dst","%Cus:ip.dst","Protocol","%Cus:ip.proto", ^
"TCP_srcport","%Cus:tcp.srcport","TCP_dstport","%Cus:tcp.dstport","Info","%i""

カスタムの列には"%Cus:Display Filter"で記述
参考:Wireshark(Tshark)のpcapファイルを使ってみよう(No.4)

パケット表示カスタム (option -Tfields option -e)

$ tshark -r filename.pcap ^
-T fields ^
-E separator=';' ^
-e frame.number -e frame.time -e ip.src -e ip.dst -e tcp.srcport -e tcp.dstport -e col.Protocol -e col.Info

※2014/06/12 -e col.Protocol -e col.Info 追記

パケットの通信量表示(option -z io,stat,num)

$ tshark -r filename.pcap -q -z io,stat,60,"Filter1"...

※2012/09/25 Filter追記

パケットの通信量表示 絶対時間表示

Wireshark-dev New date format for the iostat dissector to merge multiple files
ここを参考にパッチを当てたWiresharkコンパイルすると-z,io,stat
を利用するときに -t で時間の書式が利用できるようになる。

$ tshark  -r data.cap -q -z io,stat,60,"Filter1"... -t ad

※2012/09/25 Filter追記

ファイルの抽出

$ $ tshark -r filename.pcap -R "Display Filter" -w output_filename.pcap

※2014/07/08追記

あとは出力をバッチなりシェルなりで加工すればOK!

以上

iPhone4Sへ家計簿(ezpocket)を移行する方法!



私は、家計簿というezpocket製のiPhoneのアプリを利用している。
資産管理とGoogleへバックアップ出来る所が特徴だが、
最近のアップデートでGoogleDocsへのバックアップ・復旧機能が動かなくなっている。
アップデート待つのもめんどくさいので、直接データを移行する方法を紹介します。


iPhone Explorerもしくは何かiPhoneのファイル操作が可能なソフトで、
iPhoneのデータをバックアップして新iPhoneへ移すだけ。

iPhone Explorerでのデータの位置は、

Devices>iPhone>Apps>家計簿>Documents>ezMoneyBookJapan>ezMoneyBook.db
Devices>iPhone>Apps>家計簿>Documents>ezMoneyBookJapan>ezMoneyBook.db.myiPhoneSoft.csv

Mac OSX 10.7 Lion へ 移行した!!!


いろいろ参考にして設定!


Lionのインストール用起動可能ディスクをDVDやUSBメモリで作る | Macの手書き説明書
OS X Lion を便利に使うためのTIPS集 #1 Finder編 | トブ iPhone
Lionのユーザーライブラリフォルダを表示する方法 2 | Macの手書き説明書
OS X 10.7 Lion で隠しフォルダになったライブラリを常に表示させる方法 | Macとかの雑記帳
OS X Lion Tips のまとめ − MACお宝鑑定団 blog(羅針盤)
Beginning OS X Lion - Beginning OS X
早速LIONをインストールしてみた:その2:ジェスチャーの初期設定の変化 - treeのメモ帳
terminal - "Macintosh HD" no longer shows up in Finder on Lion - Apple - Stack Exchange
最近, 気になったこと...: OS X Lion をインストールした

Vimperator3.0で Gmail Thisボタンを追加!

赤いGmailのアイコンをステータスバーに追加します。


Gmail This は

こことか
気になるページをGmailで送信「Gmail This」ブックマークレット
ここで
Add a "Gmail This" Bookmarklet to Your Browser - About Email
紹介されていますが、見ているページをGmailで送るボタンです。

.vimperatorrc

" add Gmail this Button on StatusBar
:javascript << EOF
(function(){
    const icon = "data:image/png;base64,"
+"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAhklEQVR42tWQsQ3AIBADGYtZ2IZp"
+"2IBhUtKlTZfqwyNAhvyjpIpiyRX2YTDm/9qspebDezpDWJoz2BkAbIqRVOWzOW/w9t05HVLLnMEV"
+"HcBSIVOZJQJEiFBeAriAkKEMq2RASuWnEYLlcpYzMqCVa6A9B2dj5gaYy6oqRFzwWNqCN+6Az3UB"
+"B5Yi+/miAhQAAAAASUVORK5CYII="

    var bookmarklet = "javascript:(function(){m='http://mail.google.com/mail/?view=cm&fs=1&tf=1&to=&su='+encodeURIComponent(document.title)+'&body='+encodeURIComponent(document.location);w=window.open(m,'addwindow','status=no,toolbar=no,width=575,height=545,resizable=yes');setTimeout(function(){w.focus();},%20250);})();";

    var listener = function(){
        liberator.open(bookmarklet);
    }
    var StatusBarPanel = document.createElement('statusbarpanel');
    StatusBarPanel.setAttribute('id','gmail-this-button-clone');
    StatusBarPanel.setAttribute('class','statusbarpanel-iconic');
    StatusBarPanel.setAttribute('src',icon);
    StatusBarPanel.addEventListener('click',listener,true);
    document.getElementById('status-bar').insertBefore(StatusBarPanel,
        document.getElementById('RIL_offlineProgress'));
})();
EOF

Vimperator3.0 で Starボタンをステータスバーに移動する方法!

Vimperator2.0はこっちだよ。
Starボタンをステータスバーに移動 - keijir blog

.vimperatorrc

" Show star-button to statusbar
:javascript <<EOF
(function(){
var starPanel = document.createElement('statusbarpanel');
var starButton = document.getElementById('star-button');
starPanel.setAttribute('id','star-panel-clone');
starPanel.appendChild(starButton.cloneNode(true));
starButton.parentNode.removeChild(starButton);
document.getElementById('status-bar').insertBefore(starPanel,document.getElementById('RIL_offlineProgress'));
})();
EOF

Firefox4.0 でも Feed ボタンをステータスバーに表示する方法!


なんと!firefox4.0からFeedボタンがない!!!


ってことでアドオンインストール!
https://addons.mozilla.org/ja/firefox/addon/rss-icon-in-awesombar/

戻ってきたRSSのアイコン


しかし!ナビゲーションバーは表示したくないので、Vimperatorで移動する。
以前はここにお世話になりました。
http://d.hatena.ne.jp/teramako/20071205/p1


動かなくなったので以下を導入する!

.vimperatorrc

" Show feed-button to statusbar
" thanks idea http://d.hatena.ne.jp/teramako/20071205/p1
:javascript <<EOF
(function(){
var feedPanel = document.createElement('statusbarpanel');
var feedButton = document.getElementById('jprssicon_button');
feedPanel.setAttribute('id','feed-panel-clone');
feedPanel.appendChild(feedButton.cloneNode(true));
feedButton.parentNode.removeChild(feedButton);
document.getElementById('status-bar').insertBefore(feedPanel,document.getElementById('RIL_offlineProgress'));
})();
EOF

VimperatorでEverNoteボタンをステータスバーに移動する方法

Firefox4.0になったしいろいろ設定を変更したので久々に書こうかなと。


Vimperatorをつかっていると、ナビゲーションバー(アドレスバーとか検索バー)を表示させたくない。
しかし、そこに配置してあるボタンが使えなくなる↓↓

ってことで、



こんなボタンをステータスバーに移動しちゃいます。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓


.vimperatorrcに追記する内容

" move EverNote Button to StatusBar
:javascript << EOF
(function(){
    const icon = "data:image/png;base64,"
+"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAe0lEQVR42mNgAIL8rWb/ycEMlGiG"
+"G0JVA5r2B/5/8/UJTrznzkL8BlTucv6/6caU/19/ffoPAiA2DIPECBoAwyDbQADkImQxigwgKRBh"
+"BiB7AeQ9kg1ADsCeI3GkG0CxF5ANePTh+v/zz/aQH40gQNAAihPSwOQFSrMzAO/elnCicYCmAAAA"
+"AElFTkSuQmCC"

    var listener = function(){
        Evernote.Overlay.init(null)
    }

    var StatusBarPanel = document.createElement('statusbarpanel');
    StatusBarPanel.setAttribute('id','webclipper3-button-clone');
    StatusBarPanel.setAttribute('class','statusbarpanel-iconic');
    StatusBarPanel.setAttribute('src',icon);
    StatusBarPanel.addEventListener('click',listener,true);
    document.getElementById('status-bar').insertBefore(StatusBarPanel,
        document.getElementById('RIL_offlineProgress'));
})();
EOF

追記 EverNoteのアドオンも入れないとダメだよ!忘れてたよ!

Evernote Web Clipper :: Add-ons for Firefox