ポン酢ブログ(β)

The harder you work, the luckier you get. - Gary Player

pcapをパースする(その1・ヘッダ編)

libpcapで使われる、pcapファイルのパースにチャレンジしてみる。 今回はヘッダと生のパケットを取り出すところまでです。

パケットの構造

このブログの情報を参考にさせていただいた。この先にリンクされている、日立の資料の図がわかりやすい。

sorenuts.hatenablog.com

Global Header

マジックナンバーやタイムスタンプが格納されている。

パケット

Record(Packet) Header

incl_lenが実際のパケット長なので、これの長さ分を取り出してくれば良い。

Packet Data

incl_len分のパケットが入っているので、これを取り出せば良い。

実際にパースする

Golangで実際に読み込んでパースしてみる。 https://github.com/atpons/39ac/blob/ef55112/pcaptool/pkg/pcap/read.go で実装している。

これをWiresharkのSampleCapturesで配布されているipv4frags.pcapで、実行してみると、このような結果になり、実際にWiresharkで見比べても正しく並んでいることが分かる。

おしまい

  • スライス作りすぎなのでどうにかしていきたい
    • 今後は消しても問題なくなるように作るのでsync.Poolをちゃんと使っていくか再利用するなどをしたい

2018年に寄せて

この記事は群馬大学電子計算機研究会 IGGG Advent Calendar 2018 1日目の記事です

2018年あと一ヶ月!のまとめです.

  • セキュリティ・ミニキャンプで講師をしました.

    • 教えるという貴重な経験をしました.これを起点として,コミュニティにも関わっていく経験を今でも続けています..
  • B3になる.

    • 真面目に進路とか考えはじめる.
  • IGGG 部長へ・・・

  • 夏コミ

    • みなさまありがとうございすした
  • はじめてのインターン

    • 研鑽を積んでいきたいと思いました.ポン酢はおいしかったです.

  • いろいろと挑戦する.
  • 後期暇すぎじゃね・・・?
    • 忙しいのだけど

  • 自覚生える・・・

来年は研究室にも配属されて本当に大学生っぽいことになりそうです.やったね.

2017年はこれ: atpons.hateblo.jp

2018夏、ミクシィ(XFLAG・モンスト)でインターンしてきました

f:id:atpons:20180930181409j:plain 大学3年の夏休み、いろいろとイベントがありましたがインターンシップに参加してみました。 あまりインターンシップとか、実務したりというのがなかったのですが、今回はミクシィというところでインターンをして来ました。

どう選んだか

大きいサービスを触ってみたいというのがありました。その運用とかにも興味があるけれど、まずは開発もできないといけないワケで、そうなってくると、いろいろと限定されていきました。あと、Rubyを書きたかった。Rubyを使って、大規模なサービスを回しているというのにスゴく興味をそそられるからだ。 ミクシィは、オンプレ環境も昔から運用されていましたし、まさにフルクラウド、というワケでもないのが個人的に良いなと思いました。もちろんこれからフルクラウド、サーバレスの開発や運用も出てくるわけですが、どっちかに強くないと、片方も強くなれないんじゃないかという危惧感が自分の中にはあります。(もっともらしいことを書いてみるテスト)

↑(追記:「というワケでもない」というと語弊がありそうですが、もちろんクラウドだって活用されています!)

なにをしたか

XFLAGスタジオのなかで、モンスターストライクというゲームのサーバサイド開発を行っていました。開発だけじゃなくて、その周りの整備もいろいろとさせていただいた。開発だけじゃなくて、シャカイの立ち回りとかも勉強になった。もちろん、メンター氏がついてくれるのでそこらへんはイロイロ教えてくれるので安心できる。

インターン前、何回か面談をしたりしたが、「強すぎる、ヤバい」という感情になり自信を喪失していたけれど、なんとか頑張ろ、と思ってがっつりイロイロと経験した。やる気大事。

xflag.com

そうそう、モンスターストライクというゲームは、ワタクシが高校生の時にサービスインして、当時よく遊んでいたのを覚えている。さっき昔のスマホを出してみたら、まだmixiロゴのまま、しかもXFLAGロゴなしのアプリアイコンが出てきて、タップしたら「お使いのバージョンには対応していません」だった。もちろん、今は別のアカウントで遊んでいる。

話は変わったが、中がどういう雰囲気なのか、というのはオウンドメディアを参考にすると良いとおもいます。↓とか。(話したらマズいこと話せないし。) career.xflag.com

チームで開発するので、そのときのフローとかも体験できたし、雰囲気というのもかなりつかめたと思う。

なにを得られたか

開発がどうとかいうより、まず、実際にサーバの台数を見るとスゴかった。この規模で運用回してるのか、と思ってやっぱりびっくりしたし、そのための体制づくりも見れたと思う。

codezine.jp

上の記事では、モンスターストライクのサーバサイドのアーキテクチャについて書かれているが、規模感とかそういうのはそれで想像できると思う。素直なので、そのおかげでインターン中スムーズに色々できたのかな、というのがある。

しかもタイミングよくモンスターストライクが5周年を迎えるので、いろいろとアツい時期に入れさせてもらったので、わくわくするような体験ができた。

いろいろ

インターン期間の話

インターン期間は他のインターンしている人たちとかとも気軽に話せるし、全然不安になったりすることはないと思う。イロイロとサポートもある。

ランチとか

いろいろと渋谷のランチを食べることができました。よかったし、話せるのいい。

もらった

オラゴンもらった。かわいい。 なぜかポン酢をインターン期間中に計3本手に入れた。たぶん高血圧で死ぬ。 あとじゃがりこも結構食べたし持って帰ってきた。諸事情でハコで所有している方から頂いた。。。 f:id:atpons:20180930181644j:plain f:id:atpons:20180930181315j:plain

さいごに

一ヶ月ちょっととワタクシを世話していただいたメンター氏はじめ、チームの方々本当にありがとうございました!間違いなく「ケタハズレな冒険」ができました。

あと、もっと自信もっていきたいなと思った。萎縮しないでいろいろと話しかけたり、体験することの重要さを身を以て実感することができた。

git challenge #9 に参加してきた #mixi_git

f:id:atpons:20180910205809j:plain

git challengeとは、株式会社ミクシィが行っているGitの競技イベントです。 「学生向けgit謎解き技術イベント」ということで、いつものようなCTFとかとちょっとテイストの違う感じが結構良いなと思いました。

続きを読む

favicon や Webclip アイコンを取得するブックマークレットを作ったので Slack emoji にして役立てよう

atpons です.Slackライフにはcustom emojiが必須ですよね.

各種サービスのカスタム絵文字を作る際 favicon などをそのまま使いたいですよね.使いたい.

そんなときに便利な favicon を探してくるやつ作りました.

iconchan.herokuapp.com

使い方は表示されたブックマークレットを追加して任意のサイトで開くだけ.

そうするとこんな感じに:
f:id:atpons:20180316213125p:plain

ここからダウンロードできます.
また apple-touch-icon にも対応しているのでパスワードマネージャーとかのアイコン管理も便利になるかも.
是非使ってみてくださいね!

A4988 + Raspberry Pi シリーズでステッピングモーターを動かす

この記事は群馬大学電子計算機研究会 IGGG Advent Calendar 2017 12日目の記事です


Amazon 等で比較的安価に入手できるステッピングモータードライバ A4988 とステッピングモーターを組み合わせて Raspberry Pi シリーズ(以下 RasPi)でステッピングモーターを動かしてみるテストです.

必要なモノ

配線図

f:id:atpons:20171213164646p:plain 汚すぎるんですが勘弁してください.パワポで配線するのは険しいので Visio 使いたいですね.

動かし方

github.com Pythonステッピングモーターを動かす便利ライブラリが GitHub にありましたのでこれを使っていきます.testStepper.pyを修正しなくても動くと思います.適当に Step 数を決めて動かせばよいです.

参考リンク

ポエム

この記事は群馬大学電子計算機研究会 IGGG Advent Calendar 2017 6日目の記事です

2017年総括していきましょう.

2017年まとめ

1月

  • 覚えてないけど無をやっていた

2月

  • テストオブテスト

3月

  • 引っ越しをした.

4月

  • 2年生になった
  • C言語を講義でやるようになった
    • GitHubベースで管理してた

5月

6月

7月

  • 生きてたっけ?

8月

  • セキュキャン2017全国チューターをやりました
  • DL360 G7を買いました
    • ラックサーバーは楽しいよね

9月

  • Apple Watch 買いました
  • セキュキャン2017ミニ山梨チューターをやりました
  • セキュキャン2017ミニ宮崎チューターをやりました

10月

  • 後期スタート
  • まさか○○で○○だなんて思わなかった
  • 研究室に顔を出すようになった.まさかBBQで人に研究室を決められてたなんてないです.なくはない.

11月

  • 忘れた

12月

  • TX1310 M1を購入した
    • 何に使う?

思うこと

大学に入学してから,自分の習慣と周りの習慣の差に驚き,様々な気づきを得ました.というか,みんなは「パソコンはインターネットブラウザが入ってるタダのハコ」としか認識していないんだなと思いました.

背景白でインデントごちゃごちゃのソースコード(皆さん誰もがそこからスタートするのですが)を,手作業で修正していてとても感慨深いモノを感じました.普通どうしようかとかググらないんですかね.ググらないか.

pluma が好きで好きで仕方ないなら一生使ってれば良いと思いますけどね.はい.

いつから僕にとってパソコンはネットサーフィンの道具ではないのだと自覚したんだっけ,とか思い返しました.僕もスタートの時点ではクソインデントコードを書いていたような気がします.だけれどある日,気づきを得たから今はそんなに汚...今でも汚いのか?う〜ん,わからん.

人に聞く,これが一番大事なことです.きっとキミらが不便だと感じていることの9割9分はダレかが簡単にする方法を見つけています.だから,人に聞けば解決するかもしれないし,Googleで検索すれば見つかるかもしれない.

情報科学コースのみなさまにおかれましては,目の前にあるハコをただのインターネットブラウザが使える機械だと思わずに,どんどん深みに飛び込んでいって欲しいと思います.

きっとこれを上から目線のメッセージだと受け取る人もいるでしょうから,そうではないことを示しておきます.

今日日,実際,飛び込んだ子はすでに居るし,いつ追い越されるかヒヤヒヤしながら生活しています.だって数ヶ月前はSafariしか使ってなかったような子が,今ではHomebrewを使ってソフトウェアをインストールし,Terminal.appから操作して様々な作業を行っているのですから.果てはC++始めるみたいで,すごいですね.1

これは僕が教え込んだわけではなくて,あくまでも能動的にやっていることだと信じています.

みなさまにおかれましては,「プログラミングできるようになる」なんてタイソウな目標を立てずに,「目の前の小さな課題を解決するための道具」を,上手く活用していって欲しいと思います.そのためのヒントは,僕がいつでも差し上げますし,僕じゃなくなって,誰かに聞けばいいわけです.

いや,やっぱり聞かなくてもいい.何か困ったことがあったら,今すぐ解決しよう.


来年はどうする?

そろそろ身の振り方を決めなきゃね.というカンジですな.

2年生早い.大学早い.あ〜なにもしてない.


  1. macOS前提かよ!というツッコミがありそう.