Jak przetworzyc kolejna regule PAT po NAtowaniu

Problemy związane z routingiem
Wiadomość
Autor
smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

Jak przetworzyc kolejna regule PAT po NAtowaniu

#1

#1 Post autor: smithpl »

Witam,

mam pewien problem z ruchem z sieci LAN do serwera w DMZ

Ruch z Internetu poprawnie jest PATowany poprzez regułę i trafia do serwera w LANie

Kod: Zaznacz cały

ip nat inside source static tcp LAN-IP-serwera 443 Public-IP-serwera 443 route-map ATM-in-border extendable no-alias
Jedyny problem to fakt ze uzytkownicy w LAN ktorzy wywolują Public-IP-serwera nie moga go osiągnąć. Ruch nie jest PATowany. Cala konfiguracja jest na jednym routerze.
NAT ruchu z LAN do Internetu realizowany jest przez:

Kod: Zaznacz cały

ip nat inside source route-map RM_LANtoDMZ interface GigabitEthernet0/1.22 overload
I teraz pytanie.
Jak wymusic, aby po przeNATowaniu IP LAN uzytkownika na adres publiczny przypisany do interfejsu GigabitEthernet0/1.22, router ponownie przeanalizowal reguly PAT i uzyskany Publiczny IP uzytkownika po NAT trafil na regule PAT?:

Kod: Zaznacz cały

ip nat inside source static tcp LAN-IP-serwera 443 Public-IP-serwera 443 route-map ATM-in-border extendable no-alias

mi3t3k
member
member
Posty: 47
Rejestracja: 22 paź 2012, 21:31
Lokalizacja: Warsaw

Re: Jak przetworzyc kolejna regule PAT po NAtowaniu

#2

#2 Post autor: mi3t3k »

Nie jest to odpowiedź na pytanie, jednak czy nie sensowniej dla sieci wewnętrznej zrobić strefę "internal" w DNS i podawać adres IP z sieci DMZ tej usługi?

Pozdr,
Mi3t3k

smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

#3

#3 Post autor: smithpl »

Niestety w tym wypadku nie jest to mozliwe,
uruchomiony jest VLAN Gosc ktory ma dostep tylko do internetu z odseparowana siecia LAN.

Chodzi o to ze osoby korzystajace z tej sieci maja nie miec dostepu do sieci prywatnej ale... musza miec dostep do poczty ( jezeli jakis pracownik biura pracuje np. w tej podsieci podczas spotkania itp )

zahir
wannabe
wannabe
Posty: 101
Rejestracja: 23 lis 2009, 20:59

#4

#4 Post autor: zahir »

Przyznaję, że nie miałem okazji jeszcze przetestować, ale może pasować do Twojego scenariusza:
Zainteresuj się komendą "ip nat enable". Feature znany pod nazwą NVI (NAT Virtual Interface).
Przykład:
http://tech.jocke.no/2010/09/24/cisco-i ... interface/

pozd.

smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

#5

#5 Post autor: smithpl »

Udało mi sie przerobic NTA na NVI i funkcjonuje tak samo jak przy inside/outside

Nadal jednak nie osiagam hosta z PATowanymi portami z podsieci mimo iz w tabelach translacji widac iz poprawnie adrtesy sa natowane do docelowego hosta.

Jakies sugestie jak debugowac taki ruch ?

pawel80
member
member
Posty: 39
Rejestracja: 22 paź 2012, 11:45

#6

#6 Post autor: pawel80 »

smithpl pisze:Niestety w tym wypadku nie jest to mozliwe,
uruchomiony jest VLAN Gosc ktory ma dostep tylko do internetu z odseparowana siecia LAN.

Chodzi o to ze osoby korzystajace z tej sieci maja nie miec dostepu do sieci prywatnej ale... musza miec dostep do poczty ( jezeli jakis pracownik biura pracuje np. w tej podsieci podczas spotkania itp )
Skoro wszystko jest skonfigurowane w obrębie jednego router'a to czy nie możesz zrobić tak:
Ustawiasz routing między VLAN Gosc a LAN (ten gdzie serwer pocztowy), po czym podpinasz ACL który blokuje cały ruch do LAN oprócz serwera pocztowego?

smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

#7

#7 Post autor: smithpl »

Nie moge bo klientci z LAN guest korzystaja z DNS publicznych ( np. 8.8.8.8 ) ktore rozwiazuja nazwe na adres publiczny serwer Web.

Wiec router probuje dostarczyc ruch do publicznego IP tego serwera.
Na tym samym routerze jest translacja PAT portu 443 z Publicznego IP serwera na IP w sieci LAN ale serwerowej

Wygląda to tak ze po NAT nie jest juz obslugiwany kolejny wpis dotyczący PAT.

Ta regula NATuje klienta na IP z interfejsu DMZ

Kod: Zaznacz cały

ip nat source route-map RM_LANtoDMZ interface GigabitEthernet0/1.22 overload
Do w.w interfejsu przypisany jest secondary IP ktory jest publicznym IP serwera WWW

Kod: Zaznacz cały

interface GigabitEthernet0/1.22
 encapsulation dot1Q 22
 ip address xx.xx.xx.139 255.255.255.192 secondary
Nastepna regula PAT powinna przepuscic ruuch NATowany przez PAT:

Kod: Zaznacz cały

ip nat source static tcp 192.xx.xx.17 443 xx.xx.xx.139 443 extendable
Jak widzimy translacja przebiega ale ruch nie trafia do hosta:

Kod: Zaznacz cały

cisco#show ip nat nvi translations | i 10.xx.xx.79
tcp 10.xx.xx.79:1098     10.xx.xx.79:1098     xx.xx.xx.139:443    192.xx.xx.17:443

pawel80
member
member
Posty: 39
Rejestracja: 22 paź 2012, 11:45

#8

#8 Post autor: pawel80 »

Puściłbyś ruch dla lokalnego serwera DNS (i do serwera pocztowego) i byłby spokój a tak to trzeba kombinować :).
Zobacz tego posta: http://ccie.pl/viewtopic.php?t=4698
Wygląda jak rozwiązanie Twojego problemu.

smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

#9

#9 Post autor: smithpl »

Pawel pewnie tak ale.
To jest przyklad a takich serwerow jest kilka ( w sumie kilkanascie portow ) :-)
Musialbym utrzymywac kolejny DNS spreparowany pod potrzeby tej podsieci - bez sensu

Podany przez ciebie przyklad jest ciekawy ale nadal cos nie chce dzialac :-(
Probowalem z ip nat enable ale jest problem

Aktualne PATy opieraja sie o road mapy ktore okreslaja ruch obslugiwany przez PAT.
Przy wersji bez inside/outside ruch do lub z tuneli crypto map jest natowana bo nie ma jak tego przyblokowac :-(

Wiec musi byc inside/outside NAT.
Ustawilem nawet translacje outside i niby translacja dzialala i zamienia publiczny IP na lokalny ale ruch nie dociera do serwera w sieci LAN :-(

Kod: Zaznacz cały

ip nat outside source static tcp xx.xx.xx.LAN 443 xx.xx.xx.PUBLIC 443 extended
w tablicy wyglada ze dziala translacja ale ruch nie pojawia sie na interfejsie LAN :-(

Awatar użytkownika
garfield
CCIE
CCIE
Posty: 2882
Rejestracja: 25 sie 2006, 18:32
Lokalizacja: Gdynia

#10

#10 Post autor: garfield »

za pomoca inside/outside tego nie zrobisz, za pomoca ip nat enable TAK

http://ccie.pl/viewtopic.php?t=15429
+
http://ccie.pl/viewtopic.php?t=15020&po ... c&start=15


tutaj masz dokładnie rozwiązanie Twojego problemu (mojego autorstwa 8) )
stosując NVI spokojnie możesz użyć route-map

ciężko coś przerobić nie widząc oryginału ale przykładowo:

Kod: Zaznacz cały

 ip nat inside source route-map RM_LANtoDMZ interface GigabitEthernet0/1.22 overload 
w wersji NVI będzie wyglądało tak:

Kod: Zaznacz cały

 ip nat source route-map RM_LANtoDMZ interface GigabitEthernet0/1.22 overload
Na szybko coś tam sprawdziłem i działa - może napisz tutaj lub an PM co dokładnie nie działa Ci po przerobieniu na NVI ? Będzie łatwiej pomóc
Remember that the lab is just looking for reachability and not “optimal reachability”.

smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

#11

#11 Post autor: smithpl »

Tak, oczywiscie to co podales dziala bez problemu.
Jednak kolejne reguly NAT:

Kod: Zaznacz cały

ip nat inside source static tcp xx.xx.xx.LAN 443 xx.xx.xx.DMZ 443 route-map ATM-in-border extendable no-alias
Nie beda dzialac po przerobieniu. Jak usuniesz wpis inside to OS nie da ci wstawic road-map'y blokujacej ruch do danych hostów.
No i tu jest problem bo ruch z tunelu ipsec do hosta xx.xx.xx.DMZ bedzie podlegala natowaniu jezeli nie uzyje road mapy blokujacej.


A co nie dziala, opisuje jeszcze raz:

jest podsiec DMZ na VLAN oraz podsiec LAN untagged i podsiec Guest VLAN:

Kod: Zaznacz cały

interface GigabitEthernet0/0
 description Internet
 bandwidth 150000
 ip address xx.xx.xx.INETGW 255.255.255.252
 ip access-group ATM_in in
 ip nat outside
 ip virtual-reassembly in
 duplex auto
 speed auto
 no snmp trap link-status
 crypto map SDM_CMAP_1

interface GigabitEthernet0/1.22
 description DMZ
 encapsulation dot1Q 22
 ip address xx.xx.xx.DMZGW maska
 ip access-group DMZ_in in
 ip nat outside
 ip virtual-reassembly in
 ip policy route-map DMZ-ATM

interface GigabitEthernet0/1.11
 description WifiGuest network
 encapsulation dot1Q 11
 ip address xx.xx.xxGuestGW 255.255.255.0
 ip access-group Guest_in in
 ip nat inside
 ip virtual-reassembly in

interface GigabitEthernet0/1.1
 description LAN
 encapsulation dot1Q 1 native
 ip address xx.xx.xx.LAN
 ip nat inside
 ip virtual-reassembly in

Wykorzystujac PAT przekierowuje ruch z internetu ktory jest kierowany do IP z podsieci DMZ na adres IP serwera w sieci LAN:

Kod: Zaznacz cały

ip nat inside source static tcp xx.xx.xx.LANSERVER 443 xx.xx.xx.DMZ-IP 443 route-map ATM-in-border extendable no-alias
I to dziala pieknie. Niestety nie dziala to jezeli ruch generowany jest z podsieci WifiGuest.
I z tym mam problem.

Awatar użytkownika
garfield
CCIE
CCIE
Posty: 2882
Rejestracja: 25 sie 2006, 18:32
Lokalizacja: Gdynia

#12

#12 Post autor: garfield »

czyli problemem jest to że trzeba wyfiltrować ruch tak żeby z ipseca sie nie łapał w natowanie i w przypadku NVI to nie działa czy Router nie przyjumje komendy z route-mapa ?

zrobisz to tylko za pomoca NVI, pytanie czemy RM nie dziala
Remember that the lab is just looking for reachability and not “optimal reachability”.

smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

#13

#13 Post autor: smithpl »

RM nie dziala bo i w specyfikacji IP NAT ENABLE w opisie nie ma takiej opcji przy PAT'owaniu tylko portow.
To dziala tylko dla NAT a nie dla PAT

Ale chyba rozwiazalem problem -

Dodalem do interfejsow LAN, DMZ, WifiGuest "ip nat enable" oraz zmienilem dla WifiGuest ip nat inside na outside i teraz kazdy interfejs ma:

Kod: Zaznacz cały

interface GigabitEthernet0/0 
 description Internet 
 bandwidth 150000 
 ip address xx.xx.xx.INETGW 255.255.255.252 
 ip access-group ATM_in in 
 ip nat outside
  ip nat enable
 ip virtual-reassembly in 
 duplex auto 
 speed auto 
 no snmp trap link-status 
 crypto map SDM_CMAP_1 

interface GigabitEthernet0/1.22 
 description DMZ 
 encapsulation dot1Q 22 
 ip address xx.xx.xx.DMZGW maska 
 ip access-group DMZ_in in 
 ip nat outside
 ip nat enable 
 ip virtual-reassembly in 
 ip policy route-map DMZ-ATM 

interface GigabitEthernet0/1.11 
 description WifiGuest network 
 encapsulation dot1Q 11 
 ip address xx.xx.xxGuestGW 255.255.255.0 
 ip access-group Guest_in in 
 ip nat outside 
 ip nat enable
 ip virtual-reassembly in 

interface GigabitEthernet0/1.1 
 description LAN 
 encapsulation dot1Q 1 native 
 ip address xx.xx.xx.LAN 
 ip nat inside
 ip nat enable
 ip virtual-reassembly in 
Zmodyfikowalem tez natowanie
Ruch do internetu i do DMZ z LAN obsluguje przez NVI:

Kod: Zaznacz cały

ip nat source route-map RM_LANtoDMZ interface GigabitEthernet0/1.22 overload
ip nat source route-map SDM_RMAP_1 interface GigabitEthernet0/0 overload
ip nat source route-map SDM_RMAP_2 interface GigabitEthernet0/2 overload
Natomiast PAT obsluguja mi stare reguly bo interfejs WifiGuest jest outside:

Kod: Zaznacz cały

ip nat inside source static tcp xx.xx.xx.LANSRVR 443 xx.xx.xx.DMZSRVR 443 route-map ATM-in-border extendable no-alias
Ruch z WifiGuest do internetu obsluguja NATy NVI

Co wy na takie rozwiazanie?

Awatar użytkownika
garfield
CCIE
CCIE
Posty: 2882
Rejestracja: 25 sie 2006, 18:32
Lokalizacja: Gdynia

#14

#14 Post autor: garfield »

smithpl pisze:RM nie dziala bo i w specyfikacji IP NAT ENABLE w opisie nie ma takiej opcji przy PAT'owaniu tylko portow.
To dziala tylko dla NAT a nie dla PAT
...
racja

Jak działa to najważniejsze :)
Remember that the lab is just looking for reachability and not “optimal reachability”.

smithpl
wannabe
wannabe
Posty: 79
Rejestracja: 05 sie 2009, 18:35

#15

#15 Post autor: smithpl »

Męczy mnie jeszcze tylko 1 opcja.

Skoro zmiana z inside na outside spowodowala ze ruch jest poprawnie PATowany z WifiGuest do IP z DMZ to.....

jak zrobic aby tez byl PATowany z LAN do DMZ? :-)

Tu nie moge zmienic z inside na outside
Pytam juz czysto teoretycznie bo chcialbym zrozumiec jak to cholerstwo dziala :-)
Jaki typ reguly PAT musi byc aby PATowanie dzialalo z inside na outside

Dodalem taki wpis:

Kod: Zaznacz cały

ip nat outside source static tcp xx.xx.xx.LAN_SRVR 443 xx.xx.xx.DMZ_IP_SRVR 443 extendable
W efekcie cos idzie ale niestety nie laczy na port mimo iz translacja przechodzi:

Kod: Zaznacz cały

gw#sh ip nat translations | i IP_KLIENTA
tcp IP_KLIENTA:50227   IP_KLIENTA:50227   xx.xx.xx.DMZ_IP_SRV:443    xx.xx.xx.LAN_SRVR:443
Jakis pomysl?

ODPOWIEDZ