uRPF【Unicast Reverse Path Forwarding】
概要

通常、ルータはパケットの宛先IPアドレスだけを見て転送先を判断する。しかし、インターネットでは、送信元アドレスを書き換えた「IPスプーフィング」によって身元を偽った通信が送り込まれることがあり、偽装パケットを目的地に向けて転送してしまう場合がある。
uRPFを有効にすると、受信パケットの送信元アドレスをルーティングテーブルで逆引きし、そのアドレスへ返信する場合に使うはずの経路と、実際にパケットが届いたインターフェースを照合する。一致しない、あるいは経路そのものが存在しない場合は不正なパケットとして破棄される。「逆方向に経路を確かめる」という動作が名称の由来である。
uRPFには「Strictモード」と「Looseモード」の二種類がある。Strictモードは逆引き経路と受信インターフェースの完全一致を求める厳格な方式で、偽装検出の精度が高い。ただし、往路と復路で経路が異なる非対称ルーティング環境では、正規のパケットまで破棄する恐れがある。
Looseモードは送信元アドレスがルーティングテーブルに存在さえすれば転送を許可するため誤遮断は起きにくいが、検査の厳密さはStrictモードに劣る。経路が一方向に絞られるアクセス回線側にはStrictモード、様々な経路が絡み合うコアネットワークにはLooseモードが選ばれることが多い。
uRPFの設定はインターフェースごとに行う。外部ネットワークとの接続点に適用することで、自社ネットワーク内から偽装パケットが送出されることを防いだり、外部からの偽装攻撃を入口で遮断したりできる。DDoS攻撃の多くは送信元偽装を伴うため、uRPFはその拡散抑止にも効果がある。仕様はRFC 3704でベストプラクティスとして整理されており、ISPや企業ネットワークに広く導入されている。