ネットワークオペレーターは、遠隔からオペレーションするときに現地にいる人の作業(機器の交換など)が終わるのを待たなければいけないときがある。そんなオペレーションの合間に、思わずほっこりとするような癒やしを与えてくれるサービスが開発された。コンピュータとつながってるかを確認するときに打つコマンド「ping」を使った、「pingアスキーアート」だ。
開発されたのはpingを打つと「にゃーん」を返すサービス。IPv4とIPv6のどちらにも対応している。ただし、Cisco ルーター限定。
Cisco ルーターは、ICMP(Internet Control Message Protocol)のecho requestを送った結果を一文字ずつ返してくれる。例えば、通信相手と疎通できれば「!」を、できない場合は「.」を、宛先に到達できない場合は「U」を返すといった具合だ。
そして、横の文字数が70文字と決まっている(高さは無限)。これを活用し、70(横)×20(縦)=1400ピクセルの画像を用意。pingを1400発打つとアスキーアートが描かれるというわけだ。
さくらインターネットのVPS(仮想専用サーバ)にLinuxサーバを立て、そこにICMPのecho requestを送ると、ICMPのecho replyが返ってくるという仕組み。それとは別に、unreachableを返す実装もしている。
Pythonスクリプトでは、画像を読み取り、ICMPのシーケンス番号をみてピクセル位置を特定。「白い部分はICMPのecho reply」「黒いところはICMPのunreachable」を返すよう指示し、その結果をもとにCisco ルーターに結果を返しているという。中身のPythonスクリプトは、IPv4とIPv6の両方のプロトコルを用意。それぞれ50行程度の簡単なスクリプトを書いている。
他にも、OpenCVで画像の二値化(白と黒に変換する処理)をしたり、NetfilterQueueを使ってICMPパケットを受信したり、ScapyでICMPパケットの解析・生成するなどのこだわりも。
開発したのは、ネットワークエンジニアの岩田浩真(@kooshin)さん。Cisco ルーターを持っている人であれば、pingを打つだけで誰でもほっこりできる。ちなみに、IPv4とIPv6で結果が違うのでお試しを。
「日々のメンテナンスや障害で疲れたネットワークオペレーターの皆さまが、今日も元気に過ごせますように」(岩田さん)
(太田智美)
関連記事
- メイドさんと一緒に学ぶ「週末プログラミングスクール」開校 そこに隠された2つの社会的意義
一見、華やかな場の創造に見えるこの取り組みだが……。 - 太田智美がなんかやる:WWDC冒頭で、クックCEOが82歳のiPhoneアプリ開発者・若宮さんを紹介 成田空港でインタビューしてきた
WWDCに参加するマーちゃんを密着取材しました。 - 「プログラミング学習ソフトはたくさんあるが、学校教育では使えない」――教育現場の“見えない叫び”に元教員が教材開発 学習指導案も公開
「授業で使う」ためのさまざまな工夫がされている。 - はじめてのAI:人工知能を使ってどんなことができるの? 「東京サマーランド」も導入した監視カメラ画像解析サービスを見てきた
これまでに勉強した「顔認識API」と「感情認識API」を使って実際にサービスを提供している企業におじゃましてきました。 - 4〜8歳を対象にしたプログラミング本シリーズがいろいろすごい
保護者の教育力(読み聞かせ力?)が問われる。 - 太田智美がなんかやる:80歳を超えたオババが「Swift」でiOSアプリを開発 その裏で起こっていたミラクルストーリー
「今のゲームは若い人が作っている。だから、若い人が勝ってしまう。デイサービスなんかでも、真面目にやったら介護士さんが勝っちゃうんですよ。年寄りにはつまらない。だから年寄りが勝てるゲームを作るんです。そうですね〜このあとは、このゲームに音を付けたいですね」(マーちゃん)。 - 太田智美がなんかやる:Wordで描かれた「おひなさま」がすごい 袴は「論理積ゲート」で、鼻は「頂点の編集」で描く
自分の知ってるWordと違う。 - 大きいお友だちも歓喜! Arduinoを載せたプログラミング学習キット「KOOV」、ソニーが発売
「秋葉原のコアなファンが拡張可能なエコシステムを作っていきたい」――と担当者。 - 太田智美がなんかやる:「若い人が作るアプリは、年寄りにはつまらない」――Excelアートを極めるスーパークリエイター若宮正子さんが今度は「Swift」始める
およそ半年でリリース目指す。
Copyright © ITmedia, Inc. All Rights Reserved.