Musimy zacząć od podstaw, więc poprawmy terminologię NAT. NAT tłumaczy adresy IP w pakietach IP, prawda? Co to znaczy? Że w zasadzie tworzy miraże - tak, złudzenia optyczne, wiesz. Na przykład w typowej konfiguracji NAT, gdy prywatnie adresowane hosty LAN uzyskują dostęp do Internetu za pomocą publicznego adresu IP interfejsu routera zewnętrznego, hosty te wydają się być dla serwerów internetowych jako posiadające ten publiczny adres IP (lub adresy IP z puli publicznych adresów IP). NAT oczywiście nie tworzy nowych hostów fizycznych - ale tworzy coś w rodzaju nowych bytów wirtualnych - w tym przykładzie hosty LAN postrzegają siebie jako, powiedzmy 192.168.1.x, ale serwery internetowe widzą je jako 203.0.113.x - jeden zestaw fizycznych hostów, ale dwa zestawy adresów IP. Dwa odrębne zestawy (logiczne) hostów. Złudzenie optyczne. A terminologia jest następująca:
- wewnątrz lokalnych - „prawdziwe” adresy IP wewnętrznych hostów przypisane do ich interfejsów i wzajemnie się widzące
- inside global - „mirażowe” adresy IP widziane przez świat zewnętrzny
- poza globalnym - „prawdziwe” adresy IP hostów zewnętrznych, które widzą oni sami i (prawie) cały Internet
- poza lokalnymi - „mirażowe” adresy IP, gdy widzimy zewnętrzne hosty (jeśli poprosimy NAT o odpowiednie tłumaczenie)
Jak widać, jesteśmy zobowiązani do rozróżnienia naszej sieci od Internetu lub innej sieci zewnętrznej. Robimy to, oznaczając interfejsy IP routera jako ip nat wewnątrz lub ip nat na zewnątrz , zgadzasz się?
Pamiętajmy teraz, jak zwykle implementowany jest NAT: utrzymuje on specjalne tabele zawierające wpisy dotyczące tłumaczeń. Ważne jest to, że wpisy te można tworzyć statycznie lub dynamicznie . W przypadku wpisów tworzonych dynamicznie ważny jest kierunek ruchu - czy ruch jest inicjowany od wewnątrz na zewnątrz, czy odwrotnie? W przypadku wpisów statycznych tak nie jest - są symetryczne . Instrukcje konfiguracji NAT zawierające słowo kluczowe static tworzą wpisy statyczne natychmiast po umieszczeniu ich w uruchomionej konfiguracji; osoby z dynamicznym słowem kluczowym obserwują interesujący ruch i dynamicznie tworzą wpisy do tłumaczenia, które w końcu przekroczą limit czasu.
Możemy już spekulować na twoje ostatnie pytanie: dlaczego nie ma opcji zewnętrznego miejsca docelowego ? ip nat wewnątrz source static tworzy statyczny wpis NAT, który tłumaczy dokładnie tak, jak opisano, ale obejmuje to nie tylko ruch inicjowany z jednej określonej strony - statyczne wpisy NAT są symetryczne. Tak więc, ip nat poza docelowym statycznym stworzyłby wpis statyczny do tłumaczenia docelowych adresów IP ruchu wchodzącego do Twojej sieci z zewnątrz ORAZ źródłowego adresu IP dla ruchu wychodzącego z wewnątrz - ale to jest dokładnie to, co ip nat wewnątrz źródła statycznegopolecenie robi! Tak więc posiadanie tego polecenia jest po prostu zbędne. Jedyną różnicą jest to, że zamieniasz źródło na docelowy ip, gdy używasz jednej lub innej formy zasadniczo tego samego polecenia.
W odniesieniu do twojego pierwszego stwierdzenia: „Istnieją trzy możliwe kombinacje wewnętrzne / zewnętrzne / źródłowe / docelowe”, które nie są do końca skonfigurowane. Chodzi o to, że ogólnie mówiąc, instrukcje konfiguracji NAT nie są „formułami matematycznymi” i powinny być traktowane w całości, a nie jako zbudowane logicznie z niezależnych słów kluczowych. Tak więc każda „kombinacja” przedstawia rozwiązanie dla konkretnego zadania, na przykład ip nat wewnątrz listy miejsc docelowych służy do konfigurowania równoważenia obciążenia TCP serwera, który używa określonego algorytmu i nie działa z UDP. Ponadto (we współczesnych systemach iOS) w docelowym poleceniu static nie ma adresu IP nat - czy rzeczywiście próbowałeś go z opcją static ?
W tym dokumencie Cisco można zobaczyć niektóre konkretne scenariusze korzystania z NAT, w tym przykłady konfiguracji: 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
Na koniec chciałbym wspomnieć, że czasami NAT nie jest tym, czego chcesz, na przykład spójrz na moją odpowiedź na to „kanoniczne pytanie”: /server/55611/loopback-to-forwarded-public- ip-address-from-local-network-hairpin-nat / 733532 # 733532
PS Czy powinienem podać więcej szczegółów?