お久しぶりです。
以前投稿した時から4年ほどの月日が経過しました。
この数年間で多くのネットワーク技術に触れ、去年CCIEにも合格することができました。
自分の経験をアウトプットとして残し、誰かの役に立てればと思ったので、またこのブログを再開します。
頻度としては1週間に1記事ぐらいを目安にやっていこうと思うので、もしよければ時々覗きに来てくださいませ。
復活最初の内容としてNATに関して記事を書こうと思います。
NATとは
現場でよく見かける技術であるNAT(Network Address Translation)
これはIPアドレスを変換するために使用されている技術です。
たいていの現場では、プライベートアドレスをグローバルアドレスに変換するために使用されていますが、これが使用される背景としてお互いの送信元、宛先アドレスを変換することで誰から通信が来ていたのか、また誰に向けて通信をしているのか知られることを防ぐセキュリティとしての機能を持っています。
このNATもいろいろな種類があり、主に使用されているのは以下3つです。
①NAT
②PAT
③双方向NAT
いろんな現場でよく見かけるNATですが、これがどうやって機能しているのか参考書だけではなかなかイメージが難しいという方もいるかもしれません。
僕は検証環境を作り、パケットキャプチャをして何度も作り直してやっと理解できました。
よく見かけるけど、きちんとイメージできて仕組みを理解するのは以外にも難しいNATに関して検証環境の構成図も使用して説明していきます。
NAT
NATを説明する前に、通信というものがそもそもどうやって行われているのかですが
通信は、ルーターやパソコンからパケットといわれる荷物のような物を送りたい相手に届け、受け取った相手は貰いましたよ!という返事をすることで成り立っています。
*イメージ図 (荷物)パケットの中身
分かりやすい例だと、自宅からアマゾンでポチって商品が届く際。
商品の送信元アドレスはアマゾン倉庫。商品の宛先アドレスは自宅とイメージしてもらえればいいです。
*イメージ図
倉庫を出発した荷物は、ルーターを経由して自宅に届きますが、その際倉庫のIPアドレスが知られてしまうと今後、セキュリティ攻撃などの対象になってしまうリスクがあるとします。
それを防ぐため、ルーターを経由したときに住所を変えてしまう技術。これがNATです。
イメージ図にあるinside,outsideですが。
insideはアマゾン倉庫の縄張り、outsideは自宅の縄張りと考えてください。
画像では、アマゾン倉庫の送信元(192.168.1.1)から自宅(172.16.1.1)に向けて送られた通信は、ルーターを経由した後55.16.1.199に変換されています。
このようにパケットのアドレスを変える技術がNATになります。
##ルーター設定(inside NAT)
interface GigabitEthernet0/0
ip address 192.168.1.2 255.255.255.0
ip nat inside
no shut
interface GigabitEthernet0/1
ip address 172.16.1.2 255.255.255.0
ip nat outside
no shut
ip nat inside source static 192.168.1.1 55.16.1.199
Outside NAT
先ほどはinside側(アマゾン倉庫)からoutside(自宅)に抜ける際にアドレスが返還されていますが、これとは逆に
自宅からアマゾン倉庫に向けて注文をする際、自宅のアドレスを知られることもセキュリティリスクを含むことがあります。それに備え、outsideからinsideに向けた通信のアドレス(荷物の住所)を変換することも可能です。
注意することとしてoutsideからinsideに向けてNATをする際、Ciscoの機器を使う場合は通信の処理順序が異なることも考慮して設定をする必要があります。検証環境ではルーターがスイッチを経由してPCにつながっていますが現場は複数のルーターが絡んでくるNATが大半なので注意してください。
##ルーター設定(outside NAT)
interface GigabitEthernet0/0
ip address 192.168.1.10 255.255.255.0
ip nat inside
no shut
interface GigabitEthernet0/1
ip address 192.0.2.10 255.255.255.0
ip nat outside
no shut
ip nat outside source static 192.0.2.1 192.168.1.2
参考 Cisco機器におけるNATの処理順序
次回予告
複数のIPアドレスを使用してNATを行うPATに関して作成予定