Треба починати з основ, тож давайте переглянути термінологію NAT. NAT перекладає IP-адреси в IP-пакети, правда? Що це означає? Це, в основному, створює міражі - так, оптичні ілюзії. Наприклад, у типовій NAT-конфігурації, коли приватні адреси хостів локальної мережі отримують доступ до Інтернету, використовуючи загальнодоступну IP-адресу зовнішнього маршрутизатора, ці хости видаються для Інтернет-серверів такими, що мають цей загальнодоступний IP (або IP-адреси з пулу публічних IP-адрес). NAT, звичайно, не створює нових фізичних хостів - але створює нові види віртуальних сутностей - у цьому прикладі хости LAN бачать себе як, скажімо, 192.168.1.x, але Інтернет-сервери бачать їх як 203.0.113.x - один набір фізичних хостів, але два набори IP-адрес. Два різних набори (логічних) хостів. Оптична іллюзія. А термінологія така:
- всередині локальних - "справжніх" IP-адрес внутрішніх хостів як призначених їх інтерфейсам і так, як вони бачать один одного
- всередині глобальних - "міраж" IP-адреси, які бачать зовнішній світ
- за межами глобальних - "справжні" IP-адреси зовнішніх хостів, як вони бачили самі та (майже) весь Інтернет
- за межами локальних - "mirage" IP-адреси, коли ми бачимо зовнішніх хостів (якщо ми попросили NAT перекласти відповідним чином)
І як ви бачите, ми зобов’язані розрізняти нашу мережу та Інтернет чи іншу зовнішню мережу. Ми робимо це, позначаючи IP-інтерфейси нашого маршрутизатора як ip nat всередині, або ip nat зовні , погодьтеся?
Тепер згадаймо, як зазвичай реалізується NAT: він підтримує спеціальні таблиці, що містять записи про переклади. І важливим моментом є те, що ці записи можна створювати або статично, або динамічно . Для динамічно створених записів важливий напрямок руху - чи трафік починається зсередини назовні чи навпаки? Для статичних записів це не так - вони симетричні . Заяви конфігурації NAT, які містять статичне ключове слово, створюють статичні записи відразу після введення їх у запущений конфігурацію; ті, хто має динамічне ключове слово, стежать за цікавим трафіком і динамічно створюють записи перекладу, які згодом вичерпаються.
Ми можемо вже розмірковувати над вашим останнім питанням: чому немає зовнішнього варіанту призначення ? ip nat inside source static створює статичний запис NAT, який перекладається точно так, як ви описали, але це включає не тільки трафік, ініційований з однієї конкретної сторони - статичні записи NAT є симетричними. Таким чином, IP - нац статики поза призначення створить статичну запис для перекладу призначення IP - адреси трафіку , що входить в вашу мережу від зовнішніх і вихідних IP - адрес для трафіку , що йде від внутрішнього - але це саме те , що внутрибрюшинно фіза джерела всередині статичногокоманда робить! Отже, мати цю команду просто зайве. Єдина відмінність полягає в тому, що ви будете обмінювати джерело з пунктом призначення ip при використанні тієї чи іншої форми в основному тієї ж команди.
Що стосується вашого першого твердження, "можна налаштувати три можливі комбінації внутрішнє / зовнішнє / джерело / призначення", - це не зовсім так. Справа в тому, що, загалом кажучи, заяви конфігурації NAT не є "математичними формулами" і повинні розглядатися повністю, а не як побудовані логічно з незалежних ключових слів. Отже, кожна "комбінація" представляє рішення для певної задачі, наприклад, ip nat всередині пункту призначення використовується для налаштування балансування навантаження на сервері TCP, який використовує певний алгоритм і не працює з UDP. Крім того, (у сучасних IOS) немає статичної команди ip nat усередині статики - ви насправді випробували її зі статичним варіантом?
Ви можете побачити деякі конкретні сценарії використання NAT, включаючи приклади конфігурації в цій роботі Cisco: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_nat/configuration/12-2sx /nat-12-2sx-book/iadnat-addr-consv.html
Нарешті, я хотів би зазначити, що іноді NAT - це не те, чого ви хочете, наприклад, подивіться на мою відповідь на це "канонічне питання": /server/55611/loopback-to-forwarded-public- ip-address-from-local-network-hairpin-nat / 733532 # 733532
PS Чи варто детальніше описуватись?