Cloudflare Virtual Network はルーティングテーブルを使い、Cloudflare のグローバルネットワークから接続済みネットワークへ、next-hop 経由でトラフィックを誘導します。静的ルートの設定、または BGP peering(ベータ)から学習したルート(CNI with Dataplane v2、および IPsec と GRE トンネルで利用可能)で、Cloudflare Virtual Network のルーティングテーブルにエントリを追加できます。
次の技術的な側面の詳細は Traffic Steering を参照してください。
- ルートの優先度とウェイト
- 待ち時間を減らすためのトラフィックのリージョンスコープ
- BGP peering(ベータ)
- Automatic Return Routing(ARR)
Cloudflare Virtual Network のルーティングテーブルで許可される IPv4 アドレス範囲は次です。
- RFC 1918 ↗ アドレス空間。具体的には
10.0.0.0/8、172.16.0.0/12、192.168.0.0/16です。
Cloudflare WAN と Cloudflare Tunnel を併用する場合、Cloudflare WAN の静的ルートを選ぶときに、Cloudflare Tunnel の静的ルートで使う IP 範囲を考慮します。詳細は Cloudflare Tunnel を参照してください。
RFC 1918 外のプレフィックスについては、Cloudflare のカスタマーサービスマネージャーに連絡してください。
-
Routes ページを開きます。
Routes を開く ↗ -
Routes タブで Create route を選択し、ルートタイプとして WAN を選びます。
-
Description にルートの説明的な名前を入力します。
-
Prefix に IP アドレスの範囲を入力します。たとえば
10.10.10.100/24です。 -
Tunnel/Next hop で、トンネルエンドポイントを設定する で作成したトンネルから、ルート用のトンネルを選択します。
-
ルートの Priority を選びます。数値が小さいほど優先度が高くなります。
-
(省略可)ルートの Weight を選びます。例は 静的ルートの優先度とウェイトを設定する を参照してください。
-
(省略可)ルートを特定のリージョンにスコープする必要がある場合は、Region code で行えます。
-
(省略可)追加する前に Test routes を選択してルートをテストすることを強く推奨します。
-
Add routes を選択します。
1 つ以上の静的ルートを作成するには、API で POST リクエストを作成します。
例:
Required API token permissions
At least one of the following token permissions is required:Magic WAN WriteMagic Transit Write
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/magic/routes" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"nexthop": "<IP_NEXT_HOP>",
"prefix": "<YOUR_IP_PREFIX>",
"priority": 0,
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"description": "<ROUTE_DESCRIPTION>",
"scope": {
"colo_names": [
"den01"
],
"colo_regions": [
"APAC"
]
},
"weight": 0
}'{
"errors": [
{
"code": 1000,
"message": "message"
}
],
"messages": [
{
"code": 1000,
"message": "message"
}
],
"result": {
"routes": [
{
"nexthop": "203.0.113.1",
"prefix": "192.0.2.0/24",
"priority": 0,
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"description": "New route for new prefix 203.0.113.1",
"scope": {
"colo_names": [
"den01"
],
"colo_regions": [
"APAC"
]
},
"weight": 0
}
]
},
"success": true
}- Routes タブで、変更するルートを探します。
- 隣の三点リーダーを選択し、Edit を選択します。
- 更新したルート情報を入力します。
- (省略可)追加する前に Test routes を選択してルートをテストすることを強く推奨します。
- Edit routes を選択します。
1 つ以上の静的ルートを更新するには、API で PUT リクエストを作成します。
例:
Required API token permissions
At least one of the following token permissions is required:Magic WAN WriteMagic Transit Write
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/magic/routes/$ROUTE_ID" \
--request PUT \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"nexthop": "<IP_NEXT_HOP>",
"prefix": "<YOUR_IP_PREFIX>",
"priority": 0,
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"description": "<ROUTE_DESCRIPTION>",
"scope": {
"colo_names": [
"den01"
],
"colo_regions": [
"APAC"
]
},
"weight": 0
}'{
"errors": [
{
"code": 1000,
"message": "message"
}
],
"messages": [
{
"code": 1000,
"message": "message"
}
],
"result": {
"modified": true,
"modified_route": {
"nexthop": "203.0.113.1",
"prefix": "192.0.2.0/24",
"priority": 0,
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"description": "New route for new prefix 203.0.113.1",
"scope": {
"colo_names": [
"den01"
],
"colo_regions": [
"APAC"
]
},
"weight": 0
}
},
"success": true
}- Routes タブで、削除する静的ルートを探します。
- 隣の三点リーダーを選択し、Delete を選択します。
- チェックボックスを選択して操作を確認し、Delete を選択します。
静的ルートを削除するには、API で DELETE リクエストを作成します。
例:
Required API token permissions
At least one of the following token permissions is required:Magic WAN WriteMagic Transit Write
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/magic/routes/$ROUTE_ID" \
--request DELETE \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"{
"errors": [
{
"code": 1000,
"message": "message"
}
],
"messages": [
{
"code": 1000,
"message": "message"
}
],
"result": {
"deleted": true,
"deleted_route": {
"nexthop": "203.0.113.1",
"prefix": "192.0.2.0/24",
"priority": 0,
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"description": "New route for new prefix 203.0.113.1",
"scope": {
"colo_names": [
"den01"
],
"colo_regions": [
"APAC"
]
},
"weight": 0
}
},
"success": true
}Automatic Return Routing を使うと、Cloudflare は Cloudflare WAN(旧 Magic WAN)接続拠点からのネットワークフローを追跡し、静的または動的ルートなしに、受信した接続へ戻りトラフィックをルーティングします。この機能には Unified Routing モード が必要です。
ARR を有効にするには:
- IPsec または GRE トンネルの作成方法は、トンネルを追加する を参照してください。
- トンネルのオプションで Automatic return routing を選択します。
- Add tunnels を選択して変更を保存します。
ARR を有効にした IPsec または GRE トンネルを作成するには、POST リクエストを作成します。例:
Required API token permissions
At least one of the following token permissions is required:Magic WAN WriteMagic Transit Write
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/magic/ipsec_tunnels" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"cloudflare_endpoint": "<CLOUDFLARE_ENDPOINT>",
"interface_address": "<INTERFACE_ADDRESS>",
"name": "IPsec_1",
"customer_endpoint": "<CUSTOMER_ENDPOINT>",
"description": "Tunnel for ISP X",
"psk": "<PSK>",
"automatic_return_routing": "true"
}'BGP peering は、次のオンランプを使うときに利用できます。
- CNI with Dataplane v2(クローズドベータで、新規のお客様には提供していません)。
- IPsec と GRE トンネル(ベータ)。Unified Routing が必要です。
Cloudflare Virtual Network のルーティングテーブルはお客様が管理します。Cloudflare 側の ASN(Autonomous System Number)と、お客様デバイスの ASN の両方を選べます。お客様デバイスの ASN は 2 バイトまたは 4 バイトです。
デフォルトでは、各 BGP peering セッションは、Cloudflare Virtual Network のルーティングテーブルとの peering を表す同じ Cloudflare 側 ASN を使います。この ASN は CF Account ASN と呼ばれ、13335 に設定されます。これをプライベートな 2 バイト ASN(64512 から 65534 の任意の値、たとえば 65000)に設定できます。
この ASN を設定するには:
-
Routes ページを開きます。
Routes を開く ↗ -
WAN configuration を選択します。
-
CF Account ASN に Cloudflare の ASN を入力します。
-
Update を選択します。
Cloudflare WAN のお客様は、次にも注意してください。
- お客様はデバイス ASN を選びます。Cloudflare 側の ASN と異なる必要があります。
- Cloudflare 側の ASN は、BGP が有効なオンランプ(インターコネクト、IPsec、GRE トンネル)へ広報されるルートの
AS_PATHに含まれます。 - お客様が広報する
AS_PATHはオンランプ間で推移的です。つまり、BGP 経由で Cloudflare から受け取ったルートのAS_PATHに、起点(お客様)ASN が見えます。デフォルトの BGP ループ防止機構により、ルーターはAS_PATHに自身の ASN を含むルートを拒否します。たとえば、Cloudflare WAN に接続した 2 拠点がどちらもASN 65000を使う場合、サイト A はサイト B からのルートを受け付けず、その逆も同様です。各サイトが広報されたAS_PATHに自身の ASN を見るためです。
Cloudflare WAN 経由でプライベートネットワーク間のルーティングを有効にするには、次のいずれかを行います。- 各サイト/ネットワークに一意の ASN を割り当てる
- エッジ CPE が、
AS_PATHに自身の ASN を含む BGP ルートを受け付けるように設定する
2 つの ASN を設定する必要があります。
- CF Account ASN という名前の Cloudflare の アカウントスコープ ASN。
- BGP を設定したい各オンランプ用の 1 つの ASN。
Cloudflare アカウント ASN をすでにセットアップ済みの場合は、次のステップ 2 と 3 をスキップします。
-
Routes ページを開きます。
Routes を開く ↗ -
WAN configuration を選択します。
-
CF Account ASN に Cloudflare の ASN を入力し、Update を選択します。
-
Interconnects を開きます。
Interconnects を開く ↗ -
BGP を設定する Dataplane v2 の CNI インターコネクトを探し、隣の 三点リーダー を選択し、Configure BGP を選択します。
-
Customer device ASN に、ネットワークの ASN を入力します。
-
MD5 key に、省略可でネットワークのキーを入力できます。これは偶発的な設定ミスを防ぐためのものであり、セキュリティ機構ではありません。
-
(省略可)Additional Advertised prefix list に、既存ルートとあわせて広報したい追加プレフィックスを入力します。追加ルートを広報しない場合は空のままにします。ここでよく設定するプレフィックスは次です。
0.0.0.0/0へのルート(デフォルトルート) — Cloudflare WAN with Gateway を使う場合に、インターネット向けトラフィックをすべて引き込みます。100.96.0.0/12へのルート。Cloudflare One Clients がデフォルトで使う CGNAT 空間の一部です。100.64.0.0/12へのルート。Cloudflare Source IPs のデフォルト に使われる CGNAT 空間の一部です。
-
Save を選択します。
-
Routes ページを開きます。
Routes を開く ↗ -
WAN configuration を選択します。
-
CF Account ASN に Cloudflare の ASN を入力し、Update を選択します。
-
Connectors を開きます。
Connectors を開く ↗ -
IPsec/GRE tunnels で、BGP を設定したいトンネルを探し、隣の 三点リーダー を選択し、Configure BGP を選択します。
-
Customer device ASN に、ネットワークの ASN を入力します。
-
MD5 key に、省略可でネットワークのキーを入力できます。これは偶発的な設定ミスを防ぐためのものであり、セキュリティ機構ではありません。
-
(省略可)Additional Advertised prefix list に、既存ルートとあわせて広報したい追加プレフィックスを入力します。追加ルートを広報しない場合は空のままにします。ここでよく設定するプレフィックスは次です。
0.0.0.0/0へのルート(デフォルトルート) — Cloudflare WAN with Gateway を使う場合に、インターネット向けトラフィックをすべて引き込みます。100.96.0.0/12へのルート。Cloudflare One Clients がデフォルトで使う CGNAT 空間の一部です。100.64.0.0/12へのルート。Cloudflare Source IPs のデフォルト に使われる CGNAT 空間の一部です。
-
Save を選択します。
トンネル(GRE または IPsec)の BGP peering を設定する場合は、次を把握してください。
-
Customer Premises Equipment(CPE)が BGP peering セッションを開始する必要があります。Cloudflare は開始しません。
-
BGP スピーカーは、トンネルの IPv4 インターフェイスアドレスとピアする必要があります。CPE は peering 接続の自分側に任意の IPv4 アドレスを使えます。
/31または/30インターフェイスサブネットのもう一方のアドレスを使う必要はありません。 -
Hold time は 0 秒より大きくする必要があります(BGP
KEEPALIVEメッセージが必要です)。Cloudflare は少なくとも 45 秒を推奨します。Cloudflare は GRE/IPsec トンネル向けに 90 秒の hold time を広報します。90 秒より大きい値を設定した場合、BGP が hold time を交渉する標準的な方法に従い、交渉された hold time は 90 秒になります。 -
Connect retry time は低くします(たとえば 5 秒または 10 秒)。
-
CPE は 1 つの BGP セッションで最大 5,000 プレフィックスを広報できます。
-
MD5 認証は省略可です。最大 80 文字を使えます。対応する文字は
a-zA-Z0-9'!@#$%^&*()+[]{}<>/.,;:_-~`= \\|です。
トンネルとルートを設定したら、次のステップはサイトの作成です。サイトはデータセンター、オフィス、その他の物理的な場所のローカルネットワークを表し、そこにあるすべてのオンランプをまとめます。サイトを使うと、オンランプの状態を一目で確認し、サイトのオンランプに問題があるときに Cloudflare が通知するヘルスアラート設定もできます。
詳細は サイトをセットアップする を参照してください。