シナプス技術者ブログ

シナプスの技術者公式ブログ。インターネットで、鹿児島の毎日を笑顔にします。

macOSでAS番号の情報をシュッと調べる

技術部の中野です。

シナプス」はインターネット・サービス・プロバイダーとして、AS番号は「7511」を割り当てられ、国内外の様々な事業者とBGP接続を行っています。

この記事は、そのAS番号にまつわるお話です。

AS運用者同士のよくある会話

AS番号を所有する会社のエンジニアは、「JANOG」「QUNOG」のような、ネットワークオペレータの集まりにて、直接会って話しをする機会も多いです。

その際には、以下のような会話をすることがあります。

  • 30103のトラフィックが増えてきましたね
  • 15169はどこから流れてきます?
  • 396986とはどこでピアできましたっけ?

この数字はAS番号を表していて、なぜかASを運用する会社の名前ではなくAS番号で会話したりします。

macOSでAS番号の情報をシュッと調べる

さて、このようなAS運用者同士の会話で飛び交うAS番号ですが、主要(トラフィック交換の規模が大きい等)なAS番号はある程度覚えていますが、全てを覚えている訳はなくピンとこない事も多いです。

また、普段の仕事でも、AS番号からその事業者の情報を調べたり、IPアドレスからそのAS番号の様々な情報を調べる機会は多々あります。

その普段の情報検索を、macOSにてシュッと調べられるようにしてみました。

AS番号からネットワーク名を調べる

AS番号から、そのAS番号のネットワーク名(as-name)を調べる際は、以下のようにしています。

  1. 「command」+「space」でAlfredを起動し
  2. 「as番号」を入力して「ctrl」+「return」を押す
  3. 全画面で「AS番号」と「as-name」が表示される

AS番号から様々な情報を調べる

AS番号から、そのAS番号の様々な情報を調べる際は、以下のようにしています。

  1. 「command」+「space」でAlfredを起動
  2. 「as番号」を入力して「return」を押す
  3. Webブラウザに複数のタブが開く

現時点では、以下のWebサイトを表示するようにしています。

Alfredとは

この仕組は、macOSのアプリケーションである「Alfred」を利用していて、以下のような製品です。

  • Running with Crayons Ltd社が開発・販売しているmacOS用のランチャーアプリケーション
  • アプリケーションを起動するランチャー機能だけでなく、検索、OS操作、スニペット、ワークフローの機能などをもつ
  • 無料版とPowerpackと呼ばれる有料版がある
    • 有料版には、2つのライセンスがある
      • シングルライセンス(£34)
      • メガサポーターライセンス(£59)

前述したアニメーションGIFの機能は、ワークフローにて実現しています。

Alfredのワークフロー設定

AS番号やIPアドレスからそのAS番号の情報を表示するためのワークフローは、以下のように作成しました。

1つ1つのブロックが様々な処理をしていて、この図では以下のような内容となっています。

設定場所 内容
左側の2つ Alfredからの入力を処理する部分で、「as」「ip」のキーワードにて処理を実行
真ん中の4つ キーワードの後に続く文字列を、AS番号からas-nameを検索するなどのスクリプト処理
右側の6つ 指定されたURLの表示や、画面全体に文字を表示

スクリプト処理のいくつかを紹介します。

真ん中の1番上のスクリプトでは、AS番号からas-nameを検索して、AS番号とas-nameを出力する処理です。

/usr/bin/whois -h whois.radb.net AS${1} | /usr/bin/awk -v asn=AS${1} '/as-name:/ {print asn"\n"$2; exit}'

また、真ん中の3番目のスクリプトでは、IPアドレスからAS番号を検索して、番号だけを出力する処理です。

/usr/bin/whois -h whois.radb.net $1 | /usr/bin/awk '/origin:/ {sub("AS", "", $2); printf $2; exit}'

まとめ

日々の仕事で、AS番号やIPアドレスから情報を検索する機会は多いですが、今回紹介したAlfredなどのランチャー等を利用することで、僅かながら時間短縮や生産性向上に繋がったと感じています。

Alfredは高機能で他にも様々な自動化・省力化が可能ですので、macOSを利用しているエンジニアにはオススメです。