المقدمة
يصف هذا وثيقة كيف أن يشكل الأمرip nat outside source list
ويصف ما يحدث إلى الربط IP أثناء عملية NAT.
المتطلبات الأساسية
المتطلبات
لا توجد متطلبات خاصة لهذا المستند.
المكونات المستخدمة
تستند المعلومات الواردة في هذا المستند إلى موجهات Cisco التي تشغل إصدار برنامج Cisco IOS® Software.
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
يمكنك استخدام هذا الأمر لترجمة عنوان المصدر لحِزم IP التي تنتقل من خارج الشبكة إلى داخلها. يترجم هذا الإجراء عنوان الوجهة من حزم IP التي تنتقل في الإتجاه المعاكس- من الداخل إلى الخارج من الشبكة. هذا الأمر مفيد في مواقف مثل الشبكات المتداخلة، حيث تتداخل عناوين الشبكة الداخلية مع العناوين الموجودة خارج الشبكة. دعونا ننظر في مخطط الشبكة كمثال.
الاصطلاحات
للحصول على مزيد من المعلومات حول اصطلاحات المستندات، ارجع إلى اصطلاحات تلميحات Cisco التقنية.
التكوين
في هذا القسم، تُقدّم لك معلومات تكوين الميزات الموضحة في هذا المستند.
ملاحظة: للعثور على معلومات إضافية حول الأوامر المستخدمة في هذا المستند، أستخدم أداة بحث الأوامر (للعملاء المسجلين فقط).
الرسم التخطيطي للشبكة
يستخدم هذا المستند إعداد الشبكة التالي:
الرسم التخطيطي للشبكة
عندما يتم الحصول على إختبار اتصال من واجهة Router R1 Loopback0 (172.16.88.1) إلى واجهة Router R2 Loopback0 (172.31.1.1)، يحدث التسلسل التالي للأحداث:
- إعادة توجيه الحزم: يقوم الموجه R1 بإعادة توجيه الحزم إلى موجه NAT لأنه تم تكوينه باستخدام مسار افتراضي. على الواجهة الخارجية ل NAT-Router، الربط يتلقى عنوان مصدر (SA) من 172.16.88.1 وعنوان وجهة (DA) من 172.31.1.1.
- ترجمة NAT: بما أن ال SA مسموح به من قبل access-list 1، أي يكون استعملت من قبل أمر ip nat خارج قائمة المصدر، هو ترجمت إلى عنوان من ال nat بركة "NET". في هذه الحالة، ترجمت العنوان إلى 172.31.16.10، أي يكون أول عنوان متاح في تجمع NAT.
- التوجيه إلى الوجهة: بعد الترجمة، يبحث الموجه NAT عن الوجهة في جدول التوجيه الخاص به ويوجه الحزمة. يستلم الموجه R2 الحزمة على الواجهة الواردة الخاصة به مع SA 172.31.16.10 و DA من 172.31.1.1. يستجيب الموجه R2 عن طريق إرسال رد صدى بروتوكول رسائل التحكم في الإنترنت (ICMP) إلى 172.31.16.10. إذا لم يكن للموجه R2 مسار إلى 172.31.16.10، فإنه يسقط الحزمة.
- معالجة الرد: في هذه الحالة، يحتوي الموجه R2 على مسار افتراضي، لذلك يرسل حزمة الرد إلى الموجه NAT، باستخدام SA من 172.31.1.1 و DA من 172.31.16.10. يستقبل موجه NAT الحزمة على الواجهة الداخلية الخاصة به ويتحقق من مسار إلى عنوان 172.31.16.10. إذا لم يكن لديه مسار، فإنه يستجيب برد ICMP الذي يتعذر الوصول إليه.
- الترجمة والتوجيه للخلف: في هذه الحالة، يتلقى الموجه NAT مسارا إلى 172.31.16.10 بسبب خيار إضافة مسار لأمر ip nat خارجي مصدر، الذي يضيف مسار مضيف استنادا إلى الترجمة بين العنوان الخارجي العام والعنوان المحلي الخارجي. يترجم ال NAT-Router الربط مرة أخرى إلى المصدر عنوان (172.16.88.1) ويوجه الربط خارج قارن هو إلى مسحاج تخديد R1.
التكوينات
الموجه R1 |
hostname R1
!
!--- Output suppressed.
!
interface Loopback0
ip address 172.16.88.1 255.255.255.0
!
!--- Output suppressed.
!
interface GigabitEthernet0/0
ip address 172.16.191.254 255.255.255.252
duplex auto
speed auto
!
!--- Output suppressed.
ip route 0.0.0.0 0.0.0.0 172.16.191.253
!--- Default route to forward packets to NAT-Router.
!--- Output suppressed. |
موجه NAT-Router |
hostname NAT-Router
!
!--- Output suppressed.
!
interface GigabitEthernet0/0
ip address 172.16.191.253 255.255.255.252
ip nat outside
ip virtual-reassembly in
duplex auto
speed auto
!
interface GigabitEthernet0/1
ip address 172.31.192.202 255.255.255.0
ip nat inside
ip virtual-reassembly in
duplex auto
speed auto
!
ip nat pool NET 172.31.16.10 172.31.16.254 netmask 255.255.255.0
!--- NAT pool defining Outside Local addresses to be used for translation.
!
ip nat outside source list 1 pool NET add-route
!
!--- Configures translation for Outside Global addresses !--- with the NAT pool.
!
ip route 172.16.88.0 255.255.255.0 172.16.191.254
ip route 172.31.1.0 255.255.255.0 172.31.192.201
!
!--- Static routes for reaching the loopback interfaces on R1 and R2.
!
access-list 1 permit 172.16.88.0 0.0.0.255
!
!--- Access-list defining Outside Global addresses to be translated.
!--- Output suppressed. |
الموجه R2 |
hostname R2
!
!--- Output suppressed.
interface Loopback0
ip address 172.31.1.1 255.255.255.0
!
!
interface GigabitEthernet0/0
ip address 172.31.192.201 255.255.255.0
duplex auto
speed auto
!
!--- Output suppressed.
ip route 0.0.0.0 0.0.0.0 172.31.192.202
!--- Default route to forward packets to NAT-Router.
!--- Output suppressed. |
التحقق من الصحة
يوفر هذا القسم معلومات يمكنك إستخدامها للتأكد من أن التكوين يعمل بشكل صحيح.
يتم دعم بعض أوامر العرض بواسطة أداة مترجم الإخراج (العملاء المسجلون فقط)، والتي تتيح لك عرض تحليل إخراج show
الأمر.
يمكن إستخدام الأمر show ip nat translations للتحقق من إدخالات الترجمة، كما هو موضح في هذا الإخراج:
NAT-Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- --- --- 172.31.16.10 172.16.88.1
icmp 172.31.1.1:0 172.31.1.1:0 172.31.16.10:0 172.16.88.1:0
NAT-Router#
يوضح الإخراج أن العنوان العالمي الخارجي 172.16.88.1، وهو العنوان على واجهة Loopback0 للموجه R1، يتم ترجمته إلى العنوان المحلي الخارجي 172.31.16.10.
يمكنك إستخدام الأمر show ip route للتحقق من إدخالات جدول التوجيه، كما هو موضح:
NAT-Router#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override, p - overrides from PfR
Gateway of last resort is not set
172.16.0.0/16 is variably subnetted, 3 subnets, 3 masks
S 172.16.88.0/24 [1/0] via 172.16.191.254
C 172.16.191.252/30 is directly connected, GigabitEthernet0/0
L 172.16.191.253/32 is directly connected, GigabitEthernet0/0
172.31.0.0/16 is variably subnetted, 4 subnets, 2 masks
S 172.31.1.0/24 [1/0] via 172.31.192.201
S 172.31.16.10/32 [1/0] via 172.16.88.1
C 172.31.192.0/24 is directly connected, GigabitEthernet0/1
L 172.31.192.202/32 is directly connected, GigabitEthernet0/1
NAT-Router#
يعرض الإخراج مسار /32 للعنوان المحلي الخارجي 172.31.16.10، والذي يتم إنشاؤه بسبب خيار إضافة مسار الأمر ip nat خارجي مصدر. يستخدم هذا المسار لتوجيه الحزم التي تنتقل من الداخل إلى الخارج للشبكة وترجمتها.
استكشاف الأخطاء وإصلاحها
يوفر هذا القسم معلومات يمكنك استخدامها لاستكشاف أخطاء التكوين وإصلاحها.
هذا الإخراج هو نتيجة تشغيل أوامر debug ip packet وdebug ip nat على الموجه nat-Router، بينما يتم الضغط من عنوان الواجهة Router R1 loopback0 (172.16.88.1) إلى عنوان واجهة Router R2 Loopback0 (172.31.1.1):
!--- The source address in the first packet arriving on the outside interface is first translated.
*Oct 4 20:26:48.839: NAT: s=172.16.88.1->172.31.16.10, d=172.31.1.1 [0]
!--- The ICMP echo request packet with the translated source address is routed and forwarded on the inside interface.
*Oct 4 20:26:48.839: IP: s=172.31.16.10 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, NAT Inside(8), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.839: IP: s=172.31.16.10 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, Common Flow Table(29), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.839: IP: s=172.31.16.10 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, Stateful Inspection(30), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.839: IP: s=172.31.16.10 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, output feature, NAT ALG proxy(63), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.839: IP: s=172.31.16.10 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), g=172.31.192.201, len 100, forward
*Oct 4 20:26:48.839: IP: s=172.31.16.10 (GigabitEthernet0/0), d=172.31.1.1 (GigabitEthernet0/1), len 100, sending full packet
!--- The ICMP echo reply packet arriving on the inside interface, is first routed based on the destination address.
Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.31.16.10, len 100, input feature, Common Flow Table(5), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.31.16.10, len 100, input feature, Stateful Inspection(8), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.31.16.10, len 100, input feature, Virtual Fragment Reassembly(39), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.31.16.10, len 100, input feature, Virtual Fragment Reassembly After IPSec Decryption(57), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.31.16.10, len 100, input feature, MCI Check(109), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
!--- The destination address in the packet is then translated.
*Oct 4 20:26:48.841: NAT: s=172.31.1.1, d=172.31.16.10->172.16.88.1 [0]
!--- The ICMP echo reply packet with the translated destination address is forwarded on the outside interface.
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.16.88.1 (GigabitEthernet0/0), len 100, output feature, Post-routing NAT Outside(26), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.16.88.1 (GigabitEthernet0/0), len 100, output feature, Common Flow Table(29), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.16.88.1 (GigabitEthernet0/0), len 100, output feature, Stateful Inspection(30), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.16.88.1 (GigabitEthernet0/0), len 100, output feature, NAT ALG proxy(63), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Oct 4 20:26:48.841: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.16.88.1 (GigabitEthernet0/0), g=172.16.191.254, len 100, forward
*Oct 4 20:26:48.843: IP: s=172.31.1.1 (GigabitEthernet0/1), d=172.16.88.1 (GigabitEthernet0/0), len 100, sending full packet
*Oct 4 20:26:48.845: NAT*: s=172.16.88.1->172.31.16.10, d=172.31.1.1 [1]
*Oct 4 20:26:48.846: NAT*: s=172.31.1.1, d=172.31.16.10->172.16.88.1 [1]
*Oct 4 20:26:48.848: NAT*: s=172.16.88.1->172.31.16.10, d=172.31.1.1 [2]
*Oct 4 20:26:48.849: NAT*: s=172.31.1.1, d=172.31.16.10->172.16.88.1 [2]
*Oct 4 20:26:48.851: NAT*: s=172.16.88.1->172.31.16.10, d=172.31.1.1 [3]
*Oct 4 20:26:48.852: NAT*: s=172.31.1.1, d=172.31.16.10->172.16.88.1 [3]
*Oct 4 20:26:48.854: NAT*: s=172.16.88.1->172.31.16.10, d=172.31.1.1 [4]
*Oct 4 20:26:48.855: NAT*: s=172.31.1.1, d=172.31.16.10->172.16.88.1 [4]
يتم تكرار الإجراء السابق لكل حزمة مستلمة على الواجهة الخارجية.
ملخص
الفرق الرئيسي بين إستخدام أمر ip nat خارج قائمة المصدر (NAT الديناميكي) بدلا من الأمر ip nat خارجي مصدر ساكن إستاتيكي (NAT ساكن إستاتيكي) هو أنه لا توجد إدخالات في جدول الترجمة حتى يتحقق الموجه (الذي تم تكوينه ل NAT) من معايير ترجمة الحزمة. في المثال السابق، تستوفي الحزمة مع SA 172.16.88.1 (التي تأتي إلى الواجهة الخارجية ل NAT-Router) قائمة الوصول 1، المعايير المستخدمة من قبل أمر ip nat خارج قائمة المصدر. ولهذا السبب، يجب أن تنشأ الحزم من الشبكة الخارجية قبل أن تتمكن الحزم من الشبكة الداخلية من الاتصال بواجهة الموجه R1 loopback0.
هناك أمران مهمان يجب ملاحظتهما في هذا المثال:
1. عندما تنتقل الحزمة من الخارج إلى الداخل، تحدث الترجمة أولا، ثم يتم التحقق من جدول التوجيه للوجهة. عندما تنتقل الحزمة من الداخل إلى الخارج، يتم التحقق من جدول التوجيه للوجهة أولا، ثم تحدث الترجمة.
2. من المهم ملاحظة أي جزء من حزمة IP يتم ترجمته عند إستخدام كل من الأوامر السابقة. يوفر هذا الجدول التالي إرشادات:
|
الإجراء |
ip nat خارج قائمة المصدر |
- يترجم مصدر حزم IP التي تنتقل من الخارج إلى الداخل
- يترجم الغاية من ال ip ربط أن يكون تسافر من الداخل إلى الخارج
|
ip nat داخل قائمة المصدر |
- يترجم مصدر حزم IP التي تنتقل من الداخل إلى الخارج
- يترجم الغاية من ال ip ربط أن يكون يسافر خارج إلى الداخل
|
يشير هذا guidelines إلى أن هناك أكثر من طريقة لترجمة حزمة. حسب إحتياجاتك الخاصة، يمكنك تحديد كيفية تعريف واجهات NAT (داخل أو خارج) والتوجيه الذي يحتوي عليه جدول التوجيه قبل الترجمة أو بعدها. تذكر أن الجزء من الربط أن يكون ترجمت يعتمد على الإتجاه أن الربط يسافر، وكيف أنت يشكل nat.
معلومات ذات صلة