Cisco Router 2ISP NAT. Доступность сервиса через 2ух провайдеров

Основные функции

Трансляция статических адресов — Telnet 207.33.94.1.

Пользователь может задать взаимно однозначное соответствие между внутренними локальными и глобальными адресами.

Трансляция адресов динамического источника.

Пользователь может задать динамическое соответствие между внутренними локальными и глобальными адресами. Это задается путем описания локальных адресов, которые нужно транслировать, адресного пула, из
которого распределяются глобальные адреса, и соединения обоих.

Трансляция динамического порта.

Пользователь может хранить адреса в глобальном адресном пуле путем трансляции исходных портов в соединениях TCP (Протокол управления передачей) или в диалоговом режиме протокола UDP (Протокол пользовательских дейтаграмм). Различные локальные адреса будут преобразовываться в те же самые глобальные адреса с помощью трансляции порта, обеспечивающей необходимую уникальность. Когда появляется необходимость в трансляции, новый номер порта выбирается из того же интервала, что и первоначальный, на основе стандарта Беркли (BSD):
(1->511, 512->1023, 1024->4999, 5000->65535)

Ротационная трансляция адресов пунктов назначения.

Для трафика «внешние к внутренним» можно сконфигурировать динамическую трансляцию адресов пунктов назначения. Когда соответствие установлено, адрес пункта назначения, соответствующий одному из адресов списка
доступа, будет заменяться на адрес из ротационного пула. Назначение производится по циклическому (карусельному) принципу и выполняется только в том случае, если открывается новое соединение из «внешних к
внутренним». Весь не TCP-трафик пропускается без трансляции (если не задействованы другие трансляторы).

Кэширующий прокси-сервер Squid

В любой большой сети определенная часть трафика повторяется от пользователя к пользователю и порой его доля доходит до 50%. Логично бы было кэшировать наиболее повторяющиеся запросы и тем самым снизить нагрузку на канал, сэкономить входящий трафик и ускорить выдачу страниц конечному пользователю. Для этих задач мы используем Squid —  кэширующий прокси с широчайшими возможностями.

Останавливаем прокси-сервер и приступаем к настройке:

Открываем /etc/squid/squid.conf, находим и корректируем следующие строки, не забыв их раскомменитровать:

Указываем порт:

Настраиваем кэш:

Указываем внутренние сети, лишние комменитруем:

Разрешаем доступ из внутренних сетей (найти и раскомменитровать):

Устанавливаем лимит использования памяти:

Важное замечание! В Ubuntu 9.10 эта строка может выглядеть так, рекомендуем проверить правильность пути:

Сохраняем файл конфигурации. Теперь строим кэш и запускаем:

Для проверки указываем в браузере на клиентской машине использование прокси-сервера с адресом 10.0.0.1 и портом 3128, убеждаемся что все работает. Остается настроить прозрачную работу прокси-сервера, чтобы http трафик заворачивался на Squid  автоматически, без прописывания прокси на клиенте. Для этого открываем  /etc/nat и дописываем в конец строку:

Перезапускаем сеть:

Все. В нашем распоряжении рабочий сервер, позволяющий организовать общий доступ к интернет, кешируюший http трафик и DNS запросы, а также умеющий раздавать клиентским машинам необходимые для работы в сети настройки.

Команды конфигурации

Команды конфигурации интерфейса:

Нужно обозначить интерфейс как внешний или внутренний. Объектом трансляции будут пакеты, поступающие на обозначенный интерфейс.

Команды общей конфигурации:

Назначение пула

При назначении адресного пула используется начальный адрес, конечный адрес и маска сети. При необходимости именно эти адреса будут распределяться.

Разблокировка трансляции адресов внутренних источников

Первое выражение разблокирует динамическую трансляцию. Пакеты, отправленные из адресов, соответствующих адресам в списке простого доступа, транслируются, используя глобальные адреса, распределяемые из названного пула. Факультативное ключевое слово разблокирует трансляцию порта для UDP и TCP.

Терм overload эквивалентен PAT (Трансляции адреса порта), используемом в продукте Combinet C7x0.

Второе выражение задает одиночную статическую трансляцию.

Разблокировка трансляции адресов внутренних пунктов назначения

Эта команда подобна команде «Разблокировка трансляции адресов внутренних источников». Чтобы динамическая трансляция осуществлялась, пул следует определить как ротационный.

Разблокировка трансляции адресов внешних источников

Первое выражение (list..pool..) разблокирует динамическую трансляцию. Пакеты, отправленные из адресов, соответствующих адресам в списке простого доступа, транслируются, используя глобальные адреса,
распределяемые из названного пула.

Второе выражение (static…) задает одиночную статическую трансляцию.

Конфигурация трансляционного тайм-аута (блокировки по времени)

Динамическая трансляция блокируется по времени после определенного периода отсутствия работы. Когда трансляция порта не сконфигурирована, трансляция блокируется после 24 часов. Это время можно настраивать с
помощью приведенной выше команды или следующих ее вариантов:

Когда трансляция порта сконфигурирована, то появляется возможность более точного управления тайм-аутом трансляции, потому что каждый элемент содержит более подробную информацию о трафике, использующем трансляцию. Трансляция не в среде протоколов DNS UDP блокируется после 5 минут; в DNS — через 1 минуту; в TCP — после 24 часов, если же в потоке есть RST или FIN, тогда — через минуту.

Команды Exec:

Показ активной трансляции.

Показ трансляционной статистики.

Сброс динамической трансляции.

Сбрасывает все динамические трансляции.

Сбрасываетпростуютрансляцию.

Сбрасывает определенную динамическую трансляцию.

Отладка:

My Links

  • nixCraft (AWSOME Linux Tutorials)
  • CCNP Guide (Awsome CCNP Notes)
  • Network Geek Stuff (Awsome Network Tutorials)
  • Huanetwork Blog (Nice Huawei Networking Tutorials)
  • Labnario (Awsome Huawei Networking Tutorials)
  • Free CCNA Workbooks (CCNAs Info + LAB)
  • Online CCNA Courses
  • TutorialsPoint (Multiple Programing Langues — AWSOME)
  • RTL SDR Sceners (Awsome SDR Radio Tutorials)
  • RTL SDR Blog (Awsome SDR Radio Blog)
  • CLI Frenzy (AWSOME — Cisco Config Examples )
  • Duino 4 Projects.(Tons of Arduino Projects)
  • Raspberry Pi Pod (Raspberry Projects)
  • Huawei From Scratch (Huawei Howtos — Very Good)
  • Make Use Of (Good DIY Tutorials)
  • Adafruit Learning (Arduino Lessons / Projects)
  • Adafruit Learning (Raspberry Pi Lesons / Projects)
  • Adafruit Learning (DYI Arduino/Raspberry Projects)
  • Redes de Computadores 1 (ISEL — Muito Bom)
  • Redes de Computadores 2 (ISEL — Muito Bom)
  • Brezular’s Blog (Networking: Linux, Cisco & Huawei Emulators — AWSOME)
  • PacketLife (Networking — Very Good)
  • Visio Cafe (Networking Stencils)
  • Arduino User Community (Cool Projects)
  • Think Like a Computer (Articles and Howtos)
  • Hak5 (Hacking Shows)
  • Hacks Tips (Howtos — Very Cool)
  • Web em PT (Howtos & Stuff)
  • Arduino Shields (Addons)
  • Arduino (Open Prototype Board)
  • MigthyOHM (Cool Hw Hacks)
  • ZenPacks (ZenOSS Plugins)
  • ZenOSS (Network Monitoring)
  • Cisco Netflow Apps
  • Cisco Portugal (Blog)
  • Evil Routers (Cisco IOU and More)
  • Ethereal Mind (Networks Design)
  • HowtoGeek (Very Good Howtos)
  • Forum Routing PT
  • DigitalTut (Cisco CCNP Exam Labs)
  • 9Tut (Cisco CCNA Exam Labs)
  • Exam Collection (IT Cert Exams)
  • Career Cert (Cisco Cert Material)
  • Cert Collection (IT Cert Material)
  • GNS3 Vault (Cisco Labs)
  • CCNA Study Online
  • Cisco Router Configuration — Quick Guide
  • Cisco Networking (firewall.cx)
  • CBT Nuggets (Video IT Training — Microsoft, CompTIA, Cisco, Citrix)
  • Viper Labs (VoiP Security Assessement Tools — Ex UCSniff)
  • Ireasoning (SNMP & MIB Tools — Scan, Development, Test)
  • MikroTik (Router OS and NT Apps)
  • HTCPedia (Customizing HTC Phones)
  • Android PT (Apps, Howtos — PT)
  • Android Developers (Programing Android)
  • Pen Drive Apps (Free Portables Apps)
  • Pen Drive Linux (Linux on a PEN)
  • Think Free, Think Open (Blog)
  • PcWinTech (Apps, Howtos and more)
  • Turnkey Linux (Free Virtual Appliances)
  • VMWare Virtual Appliances (Free)
  • SpiceWorks (Network Mngt Apps)
  • SolarWinds (Networking Apps)
  • Gadmintools (Guis for Linux)
  • FlashBay (Custom PENs)
  • Networking Tutorial
  • Kit Emprego
  • OpenManiak (Network an Security)
  • SECTOOLS (NMAP)
  • NirSoft (passwords and network tools)
  • BASH Programming — Intro
  • FTTx Tutorial
  • ISEP Networking, Unix e +
  • Linux Alternatves to Windows Software
  • Pagina do Eitch (Tutorias Linux e Programação )
  • My Penguin News
  • My Howtos and Projects (WebPage)
  • Howto Geek (very cool an funny)

Поддерживаемые типы трафика

Следующие протоколы/приложения поддерживаются Cisco IOS NAT:

* Любой протокол на базе TCP, который не содержит IP-адрес источника или пункта назначения в блоке данных сегмента. Сюда входят протоколы: ICMP, HTTP, BSD rcmd (rcp, rsh, rlogin), SMTP и другие.

* Любой протокол на базе UDP, который не содержит IP-адрес источника или пункта назначения в блоке данных сегмента. Сюда входят протоколы: TFTP, NTP и другие.

* Telnet (RFC 854)

* ICMP (RFC 1256) Протокол управляющих сообщений Internet. Транслируемые Cisco IOS NAT IP-заголовки управляющих сообщений протокола ICMP вновь транслируются в первоначальную форму перед
отправкой к пунктам назначения. Cisco IOS NAT обеспечивает перетрансляцию вложенных заголовков пакетов в реальный IP-адрес получателя, чтобы тот мог его распознать.

Например:
destination unreachable (пункт назначения недоступен) (3)
source quench (обрыв источника) (4)
redirect (перенаправление) (5)
time exceeded (время просрочено) (11)
parameter problem (проблема с параметрами) (12)

* FTP (RFC 959) (Протокол передачи файлов)
Команда FTP PORT и отклик на команду PASV содержат IP-адрес запрашивающей стороны в формате ASCII. Cisco IOS NAT осуществляет контроль управляющего потока FTP и заменяет эти привязки соответствующим ASCII представлением транслируемого IP-адреса.

* HTTP (Протокол передачи гипертекстов)
Строка URL (Унифицированный локатор ресурса), подобная приведенной ниже, может появиться в HTML (Язык разметки гипертекста):Sample HTTP link
Данная строка URL содержит только IP-адрес. Так же, как и в случае SMTP, Cisco IOS NAT не будет транслировать ASCII представление IP-адреса для такой строки URL. Для трансляции адреса в строке URL используйте полностью квалифицированное имя домена. Использование IP-адресов в строках URL в основном не поощряется.

* DNS (Система доменных имен)
Cisco IOS NAT транслирует IP-адреса в заголовках и полезных нагрузках (payloads) DNS-«адреса» (A), а также инверсный «указатель» (PTR) записей ресурса (RRs). Значения времени существования (Time-to-live — TTL) во всех записях ресурса (RRs), которые получают трансляцию адресов в полезных нагрузках RR, автоматически устанавливаются в ноль. Cisco IOS NAT не транслирует IP-адреса, вложенные в передачу зон DNS.

* NFS (Сетевая файловая система)

* NetBIOS over TCP/IP

* CuSeeMe

* RealAudio

* StreamWorks

Ссылка на основную публикацию