XC セットアップガイド - Mesh編
F5ネットワークジャパン テクニカルインフォへようこそ!このページでは、F5のエンジニアが、日々の活動の中で得た成果を日本語で発信いたします。記載の内容について、より詳しい情報を必要とされる方は、担当営業・SE または F5への問い合わせ までご連絡ください。
はじめに
このページでは、これらのオフィシャルなドキュメントの補足となる資料 や 複数の機能を組合せてソリューションを実現する方法をご紹介いたします。 F5のオフィシャルなドキュメントはこちらにございます。
- AskF5: https://support.f5.com/csp/home
- F5 Cloud Docs: https://clouddocs.f5.com/
- F5 DevCentral(コミュニティ): https://devcentral.f5.com/
Network CE Site
Network
Networkを構成する要素。
要素 | 概要 |
---|---|
Interface | SiteのInside(LAN)、Outside(Internet)のIPアドレス、DHCPサーバ、DNSの指定等。 |
Virtual Network | Global Network(オーバーレイネットワーク)。Site-to-Site接続等で使用。 |
Network Connector | SiteのInside Local NetworkとGlobal Network等を接続。SNATやForward Proxyの有無を設定。 |
Fleet | 上記要素をSiteへ定義するパラメータの集合体。Fleetのラベルを発行しSiteへ付ける。 |
BGP | SiteのInside/Outsideアンダーレイで接続するBGP Peer |
Static Routing | SiteのInside/OutsideアンダーレイでStatic Routingで接続 |
Site Mesh Group | Site間でフルメッシュまたはハブアンドスポークでIPSec接続すること。Volterra REを経由しない通信。 |
オブジェクトの関係図
Site Interface
CE Siteのインタフェース設定 – Inside Interface ※Outside Interfaceの基本設定はSite構築時に作成済。


CE Siteのインタフェース設定 – Outside Interface OutsideインタフェースでBGP Peerを張る場合に設定

Fleet
作成したInterfaceとNetwork Connector(Virtual Network指定済み)をSiteへ設定。


作成したFleetをSiteへ定義(Siteへ設定が反映される)

Site Mesh Group
ユーザデータのみSite-to-Siteで直接通信。コントロールプレーンはVolterra REを使用。

Site Mesh Group用のラベルを作成。

HubとSpoke用のSiteを各々Virtual Siteでグルーピング。

IPSec VPNのトンネルIPアドレスとラベルを定義。

Site Mesh Group作成

Network CSP Site
Virtual Network
CSP SiteではCEのようにFleetを適用しないため各CSP Siteのページから追加。 Global Networksの定義によりLAN-to-LAN接続を実現。
Network Firewall CE Site
Virtual Network
Network Firewallは3つのタイプをサポート。
タイプ | レベル | 概要 |
---|---|---|
Network Policy | L3-4 | 送信元・宛先を定義しIngress/Egressでルールを作成。セッションベースのため戻りのルールは不要。 |
Fast ACL | L3-4 | CEまたはREに配置したVIP(LB)宛の通信を抑制。DDOS対策。TCP Flag等のL4 Policer。 |
Forward Proxy Policy | L7 | 送信元のIP Prefixと宛先のTLS Domain、HTTP URL、IP Prefix、BGP ASNを制限。 |
オブジェクトの関係
Load Balancing
Origin Pool
Load BalancingするエンドポイントをOrigin Server、その集合体をOrigin Poolと呼ぶ。
Origin Serverの種類
種類 | 説明 |
---|---|
IP Address | パブリック/プライベートのIPアドレス |
DNS Name | パブリック/プライベートのFQDN |
Service Name | K8sまたはConsulのサービス名 |
サービスのポート番号を指定 ロードバランスアルゴリズムを指定
Load Balancing Control
Load Balancer Algorithm(LB)
アルゴリズム | 概要 |
---|---|
Round Robin | 順番にエンドポイントを選択 |
Least Active Request | 有効なリクエスト数が少ないエンドポイント |
Random | ランダムにエンドポイントを選択 |
Source IP Stickiness | 送信元IPで宛先エンドポイントを維持 |
Cookie Based Stickiness | Cookieを挿入し宛先エンドポイントを維持 |
Ring Hash Policy | Consistent Hashing実装でEndpointの増減時に既存分散通信への影響を少なくする |
Load Balancer Algorithm(OP)
アルゴリズム | 概要 |
---|---|
Round Robin | 順番にエンドポイントを選択 |
Least Active Request | 有効なリクエスト数が少ないエンドポイント |
Random | ランダムにエンドポイントを選択 |
Ring Hash Policy | Consistent Hashing実装でEndpointの増減時に既存分散通信への影響を少なくする |
Load Balancer Override | LBのアルゴリズムに委任する。SourceIPやCookieでPersistenceする場合はこれを選択。 |
LB配置とVIP公開 – HTTP/HTTPS
VIP | 説明 |
---|---|
Advertise on Internet | VolterraのグローバルIPでインターネットへ公開。RE経由の通信。 |
Advertise on Internet(Specified VIP) | 追加されたVolterraのグローバルIPでインターネットへ公開。RE経由の通信。 |
Advertise Custom | ユーザのグローバルIPでインターネット、プライベートIPでイントラへ公開。 |
VIPの名前解決 – HTTP/HTTPS
VIPに対するDomainの指定。
VIP | 項目 | 説明 |
---|---|---|
Advertise on Internet |
|
|
Advertise Custom
(HTTP/HTTPS共通)
|
|
|
HTTPS LB – イントラネット
| イントラに公開するサービスのDomainを定義。 | TLS用の証明書と秘密鍵の登録。
TLS用の証明書、秘密鍵の登録
Origin Poolの選択とVIP(LB)の配置。
HTTPS LB – インターネット(RE経由)
インターネットへ公開するサービスの仮Domainを定義。TLSの証明書と鍵はVolterraが自動生成。
Origin PoolとVIPを設定。
設定したDomainをDelegation。
HTTPS LB – インターネット(Site直)
インターネットへ公開するサービスの仮Domainを定義。TLSの証明書と鍵はVolterraが自動生成。
TLS用の証明書、秘密鍵の登録
Origin Poolの選択とVIP(LB)の配置。
ロードバランシング – Active/Standby
| Active/Standbyの手法は2つ。 | ① Origin Pool間でActive/Standby | ② Origin Server間でActive/Standby
Origin Pool間
Origin PoolでActiveとStandbyのEndpointを追加
Origin PoolでActive/Standby用のSubset LBを有効。
Load BalancersでActive/Standby用のRouteを設定
ローカルクライアントのNode冗長
| ローカルクライアントからのアクセスはVIPではなくDNSで冗長される。
Service Policy
HTTP LBのVIPに対するL7アクセス制御
送信元の指定
送信元 | 説明 |
---|---|
IPv4 Prefix | 指定のネットワークアドレスからのアクセス |
BGP ASN | 特定のAS番号からのアクセス |
Country List | 特定の国を指定(実態はグローバルIPアドレス) |
Rate Limiting | HTTP LB VIPに対するレートリミット。
送信元の識別子:IP Prefix、ASN、HTTP Cookie、HTTP Header Name等。
レートリミットの対象:特定のHTTPメソッド、Domain、パス、ヘッダー等。
|
Client Blocking | 特定の送信元のIP PrefixまたはASNをブロック。 |
宛先・リクエストの指定
宛先 | 説明 | |
---|---|---|
Server | Domain Matcher | ドメイン名を指定。完全一致または正規表現。 |
Request | HTTP Method | メソッドとHTTPパス。Get, Put, Post等。 |
HTTP Query Parameters | クエリ文字列。?query=udp等。 | |
HTTP Headers | ヘッダ。User-Agent: Mozilla/4.0等。 | |
Cookie Matcher | Session-id=12345等 | |
Body Matcher | Request Body String。 |

API security and Anomaly detection
DDoS
HTTP LBのVIPへのDDoS攻撃を防御。
手法 | 説明 |
---|---|
Javascript Challenge | JavaScriptによる問い合わせを送り、ブラウザかどうかを識別 |
Captcha Challenge | 応答者がボットではなく人であることを確認 |
Policy Based Challenge | MLでユーザの挙動を学習しBlock/Javascript/Captchaチャレンジを適用 |
Rate Limiting | HTTP LB VIPに対するレートリミット。
送信元の識別子:IP Prefix、ASN、HTTP Cookie、HTTP Header Name等。
レートリミットの対象:特定のHTTPメソッド、Domain、パス、ヘッダー等。
|
Client Blocking | 特定の送信元のIP PrefixまたはASNをブロック。 |

Javascript Challenge
JavaScriptによる問い合わせを送り、ブラウザーかどうかを識別。 ブラウザと識別された場合、レスポンスにCookieを挿入して、次回以降のリクエストでは問い合わせない。

Policy Based Challenge - ML
ML(機械学習)でMaliciousユーザを脅威3レベルに分類。各レベル毎にアクションを指定。

脅威レベル毎のアクションを変更。

ユーザ識別子の変更。デフォルトではMaliciousユーザ=クライアントIPアドレス。

MLを有効にする。

WAF & Bot Protection
WAF
WAF:Webアプリケーションに対するシグネチャベースの攻撃検知。

WAF用語
用語 | 説明 |
---|---|
Attack Type | 攻撃または攻撃のクラスを識別するルールまたはパターン。複数の攻撃シグネチャを持つ。 |
Attack Signature | 攻撃シーケンスを識別するルールまたはパターン。HTTPリクエストとレスポンスに適用。 |
Accuracy Level | 検知するシグネチャレベルを指定。Lowレベルまで指定すると誤検知が多くなる。 |
False Positive Suppression | 機械学習により誤検知を抑制する機能。 |
Threat Campaign Detection | 新たな脅威に対し即座にシグネチャを提供。 |
Violation Detection | HTTPヘッダーやJSONデータなど標準化された形式から逸脱したものを検知。 |
Bot Protection & Defense
Bot Protection:BotやWebツール、ブラウザ等の不正な振る舞いを検知。

BOTの種類
種類 | 説明 |
---|---|
Good Bot | 既知の検索エンジンの振る舞いやシグネチャ |
Suspicious Bot | 悪意のないツールやBotの動作を示すもの。以下はSuspicious Botに分類される。
Tools - Site crawlers, monitors, spiders, web downloaders.
Bots - Social media agents, Search Bot。
|
Malicious Bot | Botシグネチャ、ブラウザ検証テスト、脆弱性スキャナー等で検知したもの。 |
Bot Defense:JSまたはSDKによりデータ収集、機械学習でリクエストが悪意のあるBotか判断。
