Linux ポリシー ルーティング

Linux ポリシー ルーティングの実装には、複数のルーティング テーブルとルーティング ポリシー データベース (RPDB) が必要です。次のように入力して、RPDB 内のポリシーを一覧表示できます。

「ip rules show」コマンドは、Linux システム上のルーティング ポリシーとポリシー ルーティング ルールを表示するために使用されます。Linux システムでは、ルーティング ポリシーは、送信元アドレス、宛先アドレス、またはその他の基準に基づいて特定のルーティング テーブルを選択するルーティング動作を定義する方法です。ポリシー ルーティング ルールを使用すると、さまざまなネットワーク トラフィックの種類やニーズに応じてさまざまなルーティング ポリシーを使用でき、より柔軟なルーティング管理を実現できます。

具体的には、「ip rules show」コマンドは、現在のシステムに定義されているすべてのポリシー ルーティング ルールをリストし、各ルールの優先順位、一致条件、ACTIONS リスト、その他の情報を表示します。例えば:

0:      from all lookup local 
32765:  from 192.168.1.0/24 lookup custom
32766:  from all lookup main 
32767:  from all lookup default 

この例では、4 つのポリシー ルーティング ルールをリストします。最初のルール (優先度 0) は、ローカル ルーティング テーブルを検索することを意味し、2 番目のルール (優先度 32765) は、送信元アドレスが 192.168.1.0/ にあるパケットに対して「custom」という名前のルートを使用することを意味します。ルーティング用の 24 ネットワーク セグメント テーブル。3 番目のルール (優先度 32766) はシステムのデフォルトのメイン ルーティング テーブルを使用することを意味し、4 番目のルール (優先度 32767) はデフォルトのルーティング テーブルを検索することを意味します。

「ip rules add」コマンドを使用すると、新しいポリシー ルーティング ルールをシステムに追加して、ネットワーク トラフィックのルーティングをより詳細に制御できます。

chunk@chunk-ThinkPad-X1-Carbon-5th  /tmp/ai  ip rule show
0:	from all lookup local
32766:	from all lookup main
32767:	from all lookup default
 chunk@chunk-ThinkPad-X1-Carbon-5th  /tmp/ai  ip route list table local
local 10.200.0.1 dev docker0 proto kernel scope host src 10.200.0.1 
broadcast 10.200.255.255 dev docker0 proto kernel scope link src 10.200.0.1 linkdown 
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1 
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1 
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1 
local 172.22.0.1 dev br-e475e85b2ff7 proto kernel scope host src 172.22.0.1 
broadcast 172.22.255.255 dev br-e475e85b2ff7 proto kernel scope link src 172.22.0.1 
local 192.168.10.11 dev wlp4s0 proto kernel scope host src 192.168.10.11 
broadcast 192.168.10.255 dev wlp4s0 proto kernel scope link src 192.168.10.11 
local 192.168.122.1 dev virbr0 proto kernel scope host src 192.168.122.1 
broadcast 192.168.122.255 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown 
local 192.168.250.1 dev anbox0 proto kernel scope host src 192.168.250.1 
broadcast 192.168.250.255 dev anbox0 proto kernel scope link src 192.168.250.1 linkdown 
 chunk@chunk-ThinkPad-X1-Carbon-5th  /tmp/ai  ip route list table main
default via 192.168.10.254 dev wlp4s0 proto dhcp metric 600 
10.200.0.0/16 dev docker0 proto kernel scope link src 10.200.0.1 linkdown 
169.254.0.0/16 dev virbr0 scope link metric 1000 linkdown 
172.22.0.0/16 dev br-e475e85b2ff7 proto kernel scope link src 172.22.0.1 
192.168.10.0/24 dev wlp4s0 proto kernel scope link src 192.168.10.11 metric 600 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown 
192.168.250.0/24 dev anbox0 proto kernel scope link src 192.168.250.1 linkdown 
 chunk@chunk-ThinkPad-X1-Carbon-5th  /tmp/ai  ip route list table default
Error: ipv4: FIB table does not exist.
Dump terminated
 ✘ chunk@chunk-ThinkPad-X1-Carbon-5th  /tmp/ai  ip route list table default
Error: ipv4: FIB table does not exist.
Dump terminated

参考:
ポリシールーティング

おすすめ

転載: blog.csdn.net/u010674101/article/details/131381670