ASA:ネットワークアドレス変換のトラブル。 パート2.静的ブロードキャスト

静的ブロードキャスト

静的な変換は、動的な変換とは異なり、アドレス(またはポートを持つアドレス)を厳密にバインドします。 ITUの内部と外部の両方からセッションを開始できるようにするのは、これらの機能です。 ただし、静的なブロードキャストを作成する際に混乱を避けるために、それらを正しく読むことをお教えします。 したがって、コマンド形式は非常に単純です。

static ({source_int},{dest_int}) {translated_address} {real_addess}

どこで
source_intパッケージが来るインターフェース
dest_intパッケージが次に行くインターフェース
real_address実際のホストアドレス
translated_addressホストアドレス

そして、ブロードキャストは次のように読み取られます。
パケットがsource_intからdest_intに実行されると、そのSOURCEアドレスはreal_addressからtranslate_addressに変わります。
パケットが反対方向、つまり dest_intインターフェイスに到達し、さらにsource_intインターフェイスを経由して、その宛先アドレスがtranslate_addressからreal_addressに変更されます



なぜなら アドレスは緊密に接続されているため、内部ではreal_addressの送信元アドレスから、外部では宛先アドレスtranslate_addressの両方でセッションを開始できます。 静的変換が両方向に機能すると言うのは、このプロパティについてです。
実際、全体の難しさは、「隠された」単語(太字)を覚えて、決して混同しないことです。

静的PATブロードキャストはそれほど複雑ではありません。 転送プロトコルといくつかのポートを指定するだけです

static ({source_int},{dest_int}) {tcp|udp} {translated_address} {translated_port} {real_addess} {real_port}


同時に、ポートは同じでも異なっていてもかまいません。 ブロードキャストは、アプリケーションが実行されている実際のポートを置き換えることができます。

1つのネットワークを同じ容量の別のネットワークに静的にリンクするタスクが発生する場合があります。 これを行うには、次のコマンドを使用します

static ({source_int},{dest_int}) {translated_address} {real_addess} netmask {mask}


このような変換はネットワークプレフィックスの置換を設定しますが、「サフィックス」を残します。 指定されたネットワーク内のホストアドレス自体。

例:内部アドレス10.1.1.100を外部192.168.1.100に、Webサーバーの内部アドレスとポート10.1.1.101を外部アドレスとポート8080に接続し、ネットワーク10.1.1.128/25を192.168.1.128/25に置き換えます

static (ins,out) 192.168.1.100 10.1.1.100
static (ins,out) tcp 192.168.1.101 8080 10.1.1.100 80
static (ins,out) 192.168.1.128 10.1.1.128 netmask 255.255.255.128


動的な翻訳に通常の翻訳と条件付きの翻訳(ポリシーNAT)があるように、静的な翻訳にも条件付きのルール(ポリシー静的)を適用できます。

このため、アクセスリストも使用されます。アクセスリストには、すぐにブロードキャストするもの(ソースアドレス)とブロードキャストするタイミング(宛先アドレス)が記述されます。
コマンドの形式は次のとおりです。

static ({source_int},{dest_int}) {translated_address} access-list {ACLNAME}

たとえば、問題を分析しましょう。サーバーがネットワーク2.0.0.0/8と通信する場合にのみ、アドレス10.1.1.100を192.168.1.100に変換する必要があります。

access-list STATIC permit ip host 10.1.1.1 2.0.0.0 255.255.255.0
static (ins,out) 192.168.1.100 access-list STATIC


したがって、アクセスリストとブロードキャストレコードは、設計の不可欠な部分です。 アクセスリストでは拒否行は許可されません。このような変換が複数ある場合、アクセスリスト内の宛先アドレスは重複しないはずです(そうでない場合、実行するブロードキャストを明確に決定することはできません)。

このような静的変換も両方の方法で機能しますが、同じ条件で:宛先アドレス192.168.1.100は、呼び出しがネットワーク2.0.0.0/8から来た場合にのみ10.1.1.100に変更されます

重要:静的ポリシーのアクセスリストのソースアドレスとして、NATを行う場合はアドレス、PATブロードキャストを行うポートとプロトコルを含むアドレス、または別のサブネットに変換するサブネットのいずれか。

例:
access-list STATICPAT permit tcp host 10.1.1.100 eq 80 2.0.0.0 255.0.0.0
static (ins,out) tcp 192.168.1.101 8080 access-list STATICPAT
!
access-list STATICNET permit ip 10.1.1.128 255.255.255.128 2.0.0.0 255.0.0.0
static (ins,out) 192.168.1.128 access-list STATICNET


_______________
UPD 7:50 16/02

動的なブロードキャストと同様に静的なブロードキャストでも、SYN Cookieテクノロジが有効になった後、開いているTCPセッションとUDPセッションの最大数、および半分開いているセッションの数を制限できます。

static ({source_int},{dest_int}) { } tcp {max} {embryonic} udp {max}
_______________

そして今、私たちは最もinな:静的翻訳の実行順序を分析します:
-ポリシーの静的なブロードキャスト(アクセスリスト付き)が最初に実行されます。 同時に、ASA自体は、アクセスリストが互いに競合しないことを保証します。
-その後、定期的な静的ブロードキャストが実行されます。 そして、ここにcがあります。ブロードキャストは、構成に記録された順序で実行されます。

詐欺の例:
! web- 10.1.1.101 192.168.1.100
! 8080, 192.168.1.100 «»
! 10.1.1.100
!
static (ins,out) tcp 192.168.1.100 8080 10.1.1.101 80
static (ins,out) 192.168.1.100 10.1.1.100
!
! –
!
static (ins,out) 192.168.1.100 10.1.1.100
static (ins,out) tcp 192.168.1.100 8080 10.1.1.101 80


合計、規則のシーケンスを要約します。

nat (ins) 0 access-list
static (ins,out) Glob_ip access-list ACL
static (ins,out) Glob_ip Loc_ip
nat (ins) 1 access-list ACL (policy NAT)
nat (ins) # NETWORK (regular NAT)


#-ゼロ以上の数
動的変換でNAT(アドレスプール)を使用できる場合、それがなくなるまで使用され、PATはインターフェイスに割り当てられていないアドレスで使用され、PATはインターフェイスのアドレスでのみ使用されます

global (out) 1 {start_ip}-{end_ip}
global (out) 1 {ip_address}
global (out) 1 interface


ここでは、ネットワーク192.168.100.0/24を除くすべてのネットワークにアクセスする場合のアドレス10.1.1.100を192.168.1.100に変換する方法も示します。 192.168.100.0に移動する場合、10.1.1.100を192.168.100.100に変換する必要があります。

Source: https://habr.com/ru/post/J84377/


All Articles