世界を動かす技術を、日本語で。

自分のASを運営する: FreeBSD上のBGP、FRR、GREトンネル、ポリシールーティング

概要

  • 個人でもAS番号IPv6プレフィックス を取得し、インターネットに独自アドレスをアナウンス可能
  • FreeBSDとFRR を活用したBGPルーター構築手順を解説
  • トンネル技術(GRE/GIF) でリモートサーバへサブネット配布を実現
  • ルーティング設計とセキュリティ の要点を具体例で紹介
  • 実践的なBGP運用ノウハウ の獲得とアドレス独立性のメリットを強調

個人AS運用の魅力と概要

  • ISPや大企業専用 と思われがちなAS運用を 個人でも実現可能 にする技術解説
  • LIR(Local Internet Registry)スポンサー制度 の利用でAS番号・IPv6プレフィックス取得が容易
  • FreeBSD環境上 の仮想マシン一台で DFZ(Default-Free Zone) へ独自アドレスをアナウンス
  • BGPの理解深化アーキテクチャの柔軟化 を実現する学習・実践環境
  • アドレス移動性 の確保で、DNS・FW等の再設定不要な運用効率向上

リソース取得手順

  • RIPE NCC (欧州RIR)から AS番号IPv6プレフィックス を取得
    • 例:AS201379, 2a06:9801:1c::/48
  • 個人の場合、RIPE会員登録不要
    • スポンサーLIR経由 で申請・登録
  • 必要な手続き
    • 用途記載の申請フォーム 提出
    • RIPEデータベースオブジェクト(aut-num, inet6num, route6) 作成
    • RPKI ROA 登録による経路正当性証明
  • アップストリーム接続先 の確保が必須
    • BGPセッションを持ち、経路をインターネットへ流す協力者(プロバイダ等)

アーキテクチャ構成

  • 2階層構造 :上流ピアとBGPルーター、下流サーバ群
    • BGPルーター :FreeBSD + FRR、2a06:9801:1c::/48をアナウンス
    • 上流ピア :AS34927(iFog)、AS209735(Lagrange)
      • GREトンネルや直接ピアリングで接続
    • 下流サーバ :GIFトンネル(IPv6-in-IPv4)でサブネット配布
      • 各サーバが独自グローバルアドレス利用可、既存プロバイダのIPv6も併用

FreeBSDルーターのネットワーク設定

  • /etc/rc.conf で物理IF・トンネルIF・静的経路を定義
    • 物理IF :vtnet0にIPv4/IPv6割当
    • ループバックIF :アナウンス用アドレス割当
    • トンネルIF :cloned_interfacesでgif0/gif1/gre0生成
    • GREトンネル :上流iFog用
    • GIFトンネル :各下流サーバ用(VPS/datacenter等)
    • ブラックホール経路 :未割当サブネットへのループ防止
    • サブネット経路 :各トンネル終端へのルーティング
  • サービス起動設定 :pf, frr, zfs, sshd等

FRR(Free Range Routing)によるBGP設定

  • /usr/local/etc/frr/frr.conf にてBGPセッション・経路制御を実装
    • プレフィックスリスト
      • PL-MY-NET :自身の/48のみマッチ
      • PL-BOGONS :ボゴン(非ルーティングアドレス)フィルタ
    • ルートマップ
      • RM-IFOG-OUT :iFog向け、BGPコミュニティ付与
      • RM-LAGRANGE-OUT :Lagrange向け、ASパスプリペンド
      • IN方向 :ボゴンフィルタ適用
    • BGPセッション設定
      • IPv6専用運用 (no bgp default ipv4-unicast)
      • TTLセキュリティ (ttl-security hops 1)
      • soft-reconfiguration inbound でポリシー変更時の再セッション不要化
      • maximum-prefix で経路リーク対策

ルーターのファイアウォール(PF)設定

  • コントロールプレーン保護データプレーン転送許可 を両立
    • インターフェース・トンネル・信頼IPのマクロ定義
    • ボゴンや不要通信の遮断
    • BGPピア・トンネル通信の許可
    • 下流サブネットへのアクセス制御

運用上のポイント・注意点

  • ブラックホール経路 の必須性
    • 未割当サブネットへのループ・リーク防止
  • ボゴンフィルタ の重要性
    • 不正経路受信時のトラフィック消失や悪用防止
  • BGPコミュニティ・ASパス操作 による経路制御・冗長性確保
  • トンネル方式 の使い分け(GRE:上流要件、GIF:シンプル・低オーバーヘッド)
  • アップストリーム選定RPKI対応 による経路信頼性担保

まとめ:個人AS運用の価値

  • アドレス独立性運用柔軟性 の獲得
  • BGPやインターネットルーティングの実地理解
  • マルチプロバイダ環境での設計自由度 向上
  • セキュリティ・安定運用 のための設計・フィルタリング実践
  • 趣味・学習・小規模事業 でのインフラ技術力強化

この構成・設計を参考に、 個人でも本格的なAS運用 を実現し、 インターネットの根幹技術 を深く体験・習得可能。

Hackerたちの意見

細かいこと言うつもりはないけど、タイトルの「AS」は大文字にすべきだよ。今のままだとちょっと混乱する。

そうそう!読み始めるまでちょっと混乱してたけど、FreeBSDの力を知るのはすごくいいね。ブログを作ってくれてありがとう!

HNは、特に認識されている略語じゃない限り、全て大文字の単語を元に戻す傾向があると思う。BGP、GRE、FreeBSDは理解されるだろうけど、ASはそうじゃないかもね。

あのIPオークションサイトで自分のIPスペースを買おうと思ったんだけど、IPv4のCクラスは約1万ドルするんだよね。止めた理由は、RIPEに登録してLIRの年会費も払わなきゃいけないって知ったから。月に数百ユーロかかるし、まだIPスペースを使う準備ができてなかったから(Cloudflareなしで基本的なAnycast IPを設定したかったんだけど、手伝ってくれるVPSホストがいて、世界中に複数のロケーションがあったんだ)。

一人で使うなら、これってIPv6の時だけ本当に意味があるよね。近い将来にこれをやりたいと思ってて、全部込みの年会費(IPv6 /48の割り当て、ASの割り当て+必要なVPS接続)が約200ドルになると思う。PIサブネットが欲しいと300-400ドルになるけど、PIは別のLIRに移動できるけど、PAはできないからね。

IPv6への移行を強く支持してるけど、今のIPv4の価格はぼったくりだよ。ブローカーやオークションサイトは夢見てるね。市場は厳しいけど、4-5年前の状況には全然及ばない。大手クラウドプロバイダーはすでに大量のIPv4を買ってて、多くの地域のISPやコロケーションプロバイダーは倒産してる。新しい会社が初めての/24や/23を取得する以外、IPv4を買う圧力は実際にはないよ。その他はオプションだね。

世界中どこでもハムラジオのライセンスを持っていれば、AMPRから無料で/24のIPv4スペースをリクエストできるよ。商業利用はできないし、アマチュア無線の「精神」に則っている必要があるんだ。残念ながら、今は少しバックログがあるみたいで(数ヶ月待ち)、ちょっと大変かも。

LIRになって他人のリソースを管理したいなら、年間費用が必要だよ(約$2000)。そうじゃなければ、OPが使ったような人気のLIRを見つけて、自分のリソースを管理してもらえばいい。そうすると、年間費用は約$60になるよ。リソースは、第三者が管理していても、直接自分に割り当てられるからね。

192.0.0.0/3の範囲からじゃないと、本当のCクラスIPプレフィックスじゃないから気をつけて。そうじゃないと、ただのキラキラした/24 IPプレフィックスになっちゃうよ。

ARINに登録できれば、最小のティアで年間260ドルだけだし、/24の申請もできるよ。これなら取れるはず。

RIPEにサインアップしたら、最初のアカウントであれば無料で/24がもらえることを忘れないでね。最初に1つだけ買ったら、その特権を失うことになっちゃうよ。

IPv6で、個人としてアドレススペースを取得できるようになるのが、初期のIPv4時代に戻ることを期待してたんだけど、残念ながら、たくさんの使用量を持つマルチホーミングの個人じゃないとダメなんだよね。ただのネット好きが自分のブロックを持ちたいだけじゃ通用しない。

Hacker Newsで議論の続きを見る