NAT (обзор и примеры) — различия между версиями
Moiseevvi (обсуждение | вклад) (→NAT != proxy) |
Moiseevvi (обсуждение | вклад) (→NAT != proxy) |
||
| Строка 1: | Строка 1: | ||
== NAT != proxy == | == NAT != proxy == | ||
| + | Это абсолютно разные технологии. Не путайте их. | ||
| + | |||
| + | = Резервирование интернет-канала от двух провайдеров при помощи NAT, ip sla = | ||
| + | |||
| + | <code> | ||
| + | ! | ||
| + | username ИМЯ password 0 ПАРОЛЬ | ||
| + | enable secret 0 ПАРОЛЬКОНФИГА | ||
| + | ! | ||
| + | ! контроль входа на маршрутизатор | ||
| + | line vty 0 4 | ||
| + | login local | ||
| + | ! | ||
| + | ! ДХЦП | ||
| + | ip dhcp pool LAN | ||
| + | network ВнутрСеть Маска | ||
| + | default-router Шлюз | ||
| + | dns-server 1.1.1.1 | ||
| + | ! DNS - фиктивный придумали | ||
| + | ! | ||
| + | ! | ||
| + | ! Монитор пинга на адрес шлюза провайдера-1 | ||
| + | ! Ждать ответа 50 мс | ||
| + | ! Пинговать с частотой 1 секунда | ||
| + | ip sla monitor 1 | ||
| + | type echo protocol ipIcmpEcho ШлюзПров1 | ||
| + | timeout 50 | ||
| + | frequency 1 | ||
| + | ! | ||
| + | ! Монитор пинга на провайдера-2 | ||
| + | ip sla monitor 2 | ||
| + | type echo protocol ipIcmpEcho ШлюзПров2 | ||
| + | timeout 50 | ||
| + | frequency 1 | ||
| + | ! | ||
| + | ! Запуск пинговалок 1 и 2, сейчас и навсегда | ||
| + | ip sla monitor schedule 1 life forever start-time now | ||
| + | ip sla monitor schedule 2 life forever start-time now | ||
| + | ! | ||
| + | ! Трэки 10 и 20 - отслеживание состояния пинговалок | ||
| + | ! Реагирует на состояние Down или Up с задержкой 1 сек. | ||
| + | track 10 rtr 1 reachability | ||
| + | delay down 1 up 1 | ||
| + | ! | ||
| + | track 20 rtr 2 reachability | ||
| + | delay down 1 up 1 | ||
| + | ! | ||
| + | ! | ||
| + | ! Маршруты на все внешние сети на обоих провайдеров | ||
| + | ! Маршруты привязаны к трэкам | ||
| + | ! и будут активироваться только если трэк в состоянии Up | ||
| + | ! т.е. если шлюз на соответствующего провайдера доступен | ||
| + | ip route 0.0.0.0 0.0.0.0 ШлюзПров1 track 10 | ||
| + | ip route 0.0.0.0 0.0.0.0 ШлюзПров2 track 20 | ||
| + | ! | ||
| + | ! | ||
| + | ! | ||
| + | int fa 0/0 | ||
| + | no shut | ||
| + | ! | ||
| + | ! Саб-интерфейсы в сторону внешних провайдеров | ||
| + | ! помечаются как outside для NAT | ||
| + | interface FastEthernet0/0.1 | ||
| + | description ISP1 | ||
| + | encapsulation dot1Q НомерВланПров1 | ||
| + | ip address ipНаПров1 Маска | ||
| + | ip nat outside | ||
| + | ! | ||
| + | interface FastEthernet0/0.2 | ||
| + | description ISP2 | ||
| + | encapsulation dot1Q НомерВланПров2 | ||
| + | ip address ipНаПров1 Маска | ||
| + | ip nat outside | ||
| + | ! | ||
| + | ! Интерфейс на внутр сеть | ||
| + | ! помечается как inside для NAT | ||
| + | ! Привязывается политика маршрутизации PBR | ||
| + | interface FastEthernet0/1 | ||
| + | ip address ipНаВнутрСеть маска | ||
| + | ip nat inside | ||
| + | ip policy route-map PBR | ||
| + | no shut | ||
| + | ! | ||
| + | ! Аксесс-листы из внутр сети наружу | ||
| + | ! На веб-трафик и на все остальное | ||
| + | ip access-list extended LOCAL | ||
| + | permit ip внутрСеть any | ||
| + | ! | ||
| + | ip access-list extended WEB | ||
| + | permit tcp внутрСеть any eq www | ||
| + | permit tcp внутрСеть any eq 443 | ||
| + | ! | ||
| + | ip access-list extended ALL | ||
| + | permit ip any any | ||
| + | ! | ||
| + | ! | ||
| + | ! хитрый рут-мап PBR | ||
| + | ! Если трафик из локалки на Веб | ||
| + | ! то назначить ему шлюзом первого провайдера | ||
| + | ! Иначе, прочему трафику из локалки | ||
| + | ! назначить шлюзом второго провайдера. | ||
| + | ! При назначении шлюза проверяются Трэки | ||
| + | route-map PBR permit 10 | ||
| + | match ip address WEB | ||
| + | set ip next-hop verify-availability ШлюзПров1 1 track 10 | ||
| + | ! | ||
| + | route-map PBR permit 20 | ||
| + | match ip address ALL | ||
| + | set ip next-hop verify-availability ШлюзПров2 1 track 20 | ||
| + | ! | ||
| + | ! | ||
| + | ! хитрый рут-мап ISP1 | ||
| + | ! срабатывает если трафик из локалки | ||
| + | ! пытается выйти через интерфейс Fa0/0.1 | ||
| + | route-map ISP1 permit 10 | ||
| + | match ip address LOCAL | ||
| + | match interface FastEthernet0/0.1 | ||
| + | ! | ||
| + | ! хитрый рут-мап ISP2 | ||
| + | ! срабатывает если трафик из локалки | ||
| + | ! пытается выйти через интерфейс Fa0/0.2 | ||
| + | route-map ISP2 permit 10 | ||
| + | match ip address LOCAL | ||
| + | match interface FastEthernet0/0.2 | ||
| + | ! | ||
| + | ! | ||
| + | ! Наконец, NAT ;-) | ||
| + | ! | ||
| + | ! Трафик из локалки в первого провайдера Натить через первый интерфейс | ||
| + | ip nat inside source route-map ISP1 interface FastEthernet0/0.1 overload | ||
| + | ! | ||
| + | ! Трафик из локалки во второго провайдера Натить через второй интерфейс | ||
| + | ip nat inside source route-map ISP2 interface FastEthernet0/0.2 overload | ||
| + | ! | ||
| + | ! Трафик на фиктивный ДНС переНатить на Гугл-ДНС | ||
| + | ip nat outside source static 8.8.8.8 1.1.1.1 no-alias | ||
| + | ! | ||
| + | ! проброс внутреннего порта 3389 на внешний порт 1111 | ||
| + | ip nat inside source static tcp внутрХост 3389 внешip 1111 extendable | ||
| + | ip nat inside source static tcp внутрХост 3389 внешip 1111 extendable | ||
| + | ! | ||
| + | ! | ||
| + | </code> | ||
[[Категория:Сети]] | [[Категория:Сети]] | ||
[[Category:Cisco]] [[Category:NAT]] | [[Category:Cisco]] [[Category:NAT]] | ||
Версия 10:10, 7 ноября 2013
NAT != proxy
Это абсолютно разные технологии. Не путайте их.
Резервирование интернет-канала от двух провайдеров при помощи NAT, ip sla
!
username ИМЯ password 0 ПАРОЛЬ
enable secret 0 ПАРОЛЬКОНФИГА
!
! контроль входа на маршрутизатор
line vty 0 4
login local
!
! ДХЦП
ip dhcp pool LAN
network ВнутрСеть Маска
default-router Шлюз
dns-server 1.1.1.1
! DNS - фиктивный придумали
!
!
! Монитор пинга на адрес шлюза провайдера-1
! Ждать ответа 50 мс
! Пинговать с частотой 1 секунда
ip sla monitor 1
type echo protocol ipIcmpEcho ШлюзПров1
timeout 50
frequency 1
!
! Монитор пинга на провайдера-2
ip sla monitor 2
type echo protocol ipIcmpEcho ШлюзПров2
timeout 50
frequency 1
!
! Запуск пинговалок 1 и 2, сейчас и навсегда
ip sla monitor schedule 1 life forever start-time now
ip sla monitor schedule 2 life forever start-time now
!
! Трэки 10 и 20 - отслеживание состояния пинговалок
! Реагирует на состояние Down или Up с задержкой 1 сек.
track 10 rtr 1 reachability
delay down 1 up 1
!
track 20 rtr 2 reachability
delay down 1 up 1
!
!
! Маршруты на все внешние сети на обоих провайдеров
! Маршруты привязаны к трэкам
! и будут активироваться только если трэк в состоянии Up
! т.е. если шлюз на соответствующего провайдера доступен
ip route 0.0.0.0 0.0.0.0 ШлюзПров1 track 10
ip route 0.0.0.0 0.0.0.0 ШлюзПров2 track 20
!
!
!
int fa 0/0
no shut
!
! Саб-интерфейсы в сторону внешних провайдеров
! помечаются как outside для NAT
interface FastEthernet0/0.1
description ISP1
encapsulation dot1Q НомерВланПров1
ip address ipНаПров1 Маска
ip nat outside
!
interface FastEthernet0/0.2
description ISP2
encapsulation dot1Q НомерВланПров2
ip address ipНаПров1 Маска
ip nat outside
!
! Интерфейс на внутр сеть
! помечается как inside для NAT
! Привязывается политика маршрутизации PBR
interface FastEthernet0/1
ip address ipНаВнутрСеть маска
ip nat inside
ip policy route-map PBR
no shut
!
! Аксесс-листы из внутр сети наружу
! На веб-трафик и на все остальное
ip access-list extended LOCAL
permit ip внутрСеть any
!
ip access-list extended WEB
permit tcp внутрСеть any eq www
permit tcp внутрСеть any eq 443
!
ip access-list extended ALL
permit ip any any
!
!
! хитрый рут-мап PBR
! Если трафик из локалки на Веб
! то назначить ему шлюзом первого провайдера
! Иначе, прочему трафику из локалки
! назначить шлюзом второго провайдера.
! При назначении шлюза проверяются Трэки
route-map PBR permit 10
match ip address WEB
set ip next-hop verify-availability ШлюзПров1 1 track 10
!
route-map PBR permit 20
match ip address ALL
set ip next-hop verify-availability ШлюзПров2 1 track 20
!
!
! хитрый рут-мап ISP1
! срабатывает если трафик из локалки
! пытается выйти через интерфейс Fa0/0.1
route-map ISP1 permit 10
match ip address LOCAL
match interface FastEthernet0/0.1
!
! хитрый рут-мап ISP2
! срабатывает если трафик из локалки
! пытается выйти через интерфейс Fa0/0.2
route-map ISP2 permit 10
match ip address LOCAL
match interface FastEthernet0/0.2
!
!
! Наконец, NAT ;-)
!
! Трафик из локалки в первого провайдера Натить через первый интерфейс
ip nat inside source route-map ISP1 interface FastEthernet0/0.1 overload
!
! Трафик из локалки во второго провайдера Натить через второй интерфейс
ip nat inside source route-map ISP2 interface FastEthernet0/0.2 overload
!
! Трафик на фиктивный ДНС переНатить на Гугл-ДНС
ip nat outside source static 8.8.8.8 1.1.1.1 no-alias
!
! проброс внутреннего порта 3389 на внешний порт 1111
ip nat inside source static tcp внутрХост 3389 внешip 1111 extendable
ip nat inside source static tcp внутрХост 3389 внешip 1111 extendable
!
!