Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей. |
Обеспечение доступа в сеть Интернет
Замечания по работе системы разрешения доменных имен
Система доменных имен Интернет (DNS, Domain Name System) представляет собой иерархическую распределенную систему сопоставления символьных имен узлов и сетевых служб их IP-адресам, а также маршрутизации электронной почты. Иерархия DNS отражена в многоуровневой структуре доменных имен (например: www.intuit.ru, ru — домен 1-го уровня, intuit — 2-го, www — 3-го).
Для разрешение IP-адреса по доменному имени используется рекурсивный поиск. Рекурсия начинается с обращения к одному из корневых DNS-серверов, содержащих ссылки на DNS-сервера, ответственные за домены 1-го уровня, далее отправляется запрос о расположении домена 2-го уровня к полномочному DNS-серверу домена 1-го уровня и т. д. Рекурсивный DNS-сервер обычно в целях снижения трафика кэширует запросы (DNS-кэш).
Для полноценного взаимодействия с сетью Интернет на узлах локальной сети должен быть указан один или несколько IP-адресов рекурсивных DNS-серверов. В качестве таковых можно использовать DNS-сервера провайдера или настроить локальный DNS-кэш.
Традиционно в Linux поведение клиентской подсистемы DNS определяется следующими файлами:
- /etc/resolv.conf, в котором могут указываться домен узла, домен подстановки при разрешении неполных имен и список DNS-серверов;
- /etc/hosts — содержит статическую таблицу разрешения имен узлов;
- /etc/host.conf — содержит некоторые настройки подсистемы DNS.
В некоторых случаях для динамического изменения настроек DNS в зависимости от активных внешних подключений, используется пакет resolvconf. NetworkManager также может менять содержимое файла resolv.conf в соответствие с производимыми пользователем изменениями. В Debian также на содержимое файла resolv.conf могут влиять записи о DNS-серверах в файле /etc/network/interfaces. Для тестирования работы подсистемы DNS могут использоваться утилиты nslookup или dig (в Debian содержатся в пакете dnsutils ).
Пример 12.6. .
# dig -b 192.168.200.2 @192.168.200.1 www.intuit.ru a ; <<>> DiG 9.6-ESV-R3 <<>> -b 192.168.200.2 @192.168.200.1 www.intuit.ru a ; (1 server found) ;; global options: +cmd ;; Got answer: ;; - >>HEADER<< - opcode: QUERY, status: NOERROR, id: 4921 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 4 ;; QUESTION SECTION: ;www.intuit.ru. IN A ;; ANSWER SECTION: www.intuit.ru. 1295 IN A 194.67.246.18 ;; AUTHORITY SECTION: intuit.ru. 1295 IN NS ns.intuit.ru. intuit.ru. 1295 IN NS ns2.osp.ru. intuit.ru. 1295 IN NS ns1.intuit.ru. intuit.ru. 1295 IN NS ns3.osp.ru. ;; ADDITIONAL SECTION: ns.intuit.ru. 3447 IN A 194.67.165.74 ns1.intuit.ru. 3447 IN A 194.67.246.5 ns2.osp.ru. 3447 IN A 81.13.33.67 ns3.osp.ru. 3447 IN A 194.67.168.66 ;; Query time: 18 msec ;; SERVER: 192.168.200.1#53(192.168.200.1) ;; WHEN: Sun May 29 19:26:16 2011 ;; MSG SIZE rcvd: 186
Утилита dig полезна для тестирования DNS в сложных конфигурациях. В данном случае ключ -b позволяет указать исходный IP-адрес, после @ указывается IP-адрес сервера, к которому делается запрос, а затем — имя, которое нужно разрешить и тип записи ( a ).
Пример настройки сервера доступа в Интернет для локальной сети
Пусть есть подключение к инфраструктуре провайдера по технологии Ethernet, а Интернет-доступ осуществляется с помощью технологии PPTP VPN. Реализуем в VirtualBox на основе Linux схему, состоящую из сервера доступа (первая виртуальная машина) к сети Интернет для виртуального сетевого сегмента, представленного еще одной виртуальной машиной - клиентом. Для доступа сервера к Интернет будет использоваться подключение VirtualBox "Сетевой мост", виртуальный локальный сегмент будет использовать "Внутреннюю сеть". Настроим на сервере для клиентов виртуальной локальной сети DNS-кэш на основе программы dnsmasq [ 50 ] таким образом, чтобы клиенты отправляли DNS-запросы на локальный адрес сервера, а сервер обращался к DNS-серверу провайдера. Дополнительно также будет настроен DHCP-сервер на локальном интерфейсе.
- Запустим сервер, предварительно настроив два сетевых адаптера сервера на соответствующие виртуальные подключения. Пусть сетевой адаптер сервера eth0 подключен к сетевому мосту, а eth1 — к внутренней сети. Настроим eth0 на
динамическое получение параметров IP (в сети провайдера), а на eth1 установим статический IP-адрес 192.168.1.1/24. В Debian
для этого надо отредактировать файл /etc/network/interfaces и перезапустить сетевую подсистему:
# cat /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.1.1 netmask 255.255.255.0
- Далее установим на сервере пакет pptp-linux с помощью команды apt-get:
# apt-get install pptp-linux
В файле /etc/ppp/chap-secrets укажем логин, имя подключения и пароль для подключения к сети провайдера:
# cat /etc/ppp/chap-secrets user0013 vpn Sdnf5r1
Для инициализации pptp-туннеля и настройки маршрутизации на сервере напишем скрипт upptplink.sh:
# cat upserver.sh #!/bin/sh # адрес VPN-сервера SERVER ="10.10.10.10" # имя пользователя USER=user0013 # имя ppp-интерфейса PIF=ppp0 pppd file /etc/ppp/options.pptp defaultroute replacedefaultroute name $USER remotename vpn pty "pptp $SERVER —nolaunchpppd" sleep 5 echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o $PIF -s 192.168.1.0/24 -j MASQUERADE
Утилита pppd устанавливает соединение точка-точка с VPN-сервером c помощью утилиты pptp. Основные опции pppd указаны в файле /etc/ppp/options.pptp (в данном случае используются настройки по умолчанию), в командной строке указаны опции defaultroute и replacedefaultroute для использования туннеля в качестве шлюза по умолчанию и перезаписи, если необходимо, текущего шлюза по умолчанию, опция name — имя пользователя, remotename — имя vpn-подключения.
В скрипте также включается функция пересылки и создается правило для трансляции запросов узлов локальной сети в адрес, установленный на ppp-интерфейсе.
- Для Debian dnsmasq можно установить из репозитория (пакет называется dnsmasq-base):
# apt-get install dnsmasq-base
Далее создадим файл конфигурации /etc/dnsmasq.conf:
# cat /etc/dnsmasq.conf listen-address=192.168.1.1 no-dhcp-interface=eth0,ppp0 no-resolv server=10.10.10.10 dhcp-range=192.168.1.10,192.168.1.253,24h cache-size=300 dhcp-leasefile=/var/lib/misc/dnsmasq.leases
Опция listen-address указывает на каком интерфейсе слушать клиентские dns-запросы, no-resolv — не использовать файл /etc/resolv.conf для настройки родительского DNS-сервера, server — указать DNS-сервер провайдера.
Примечание: Кроме DNS-форвардинга в dnsmasq реализована функция выдачи IP-адресов клиентам по протоколу DHCP (DHCP-сервер). Соответственно опция dhcp-range — диапазон динамически выдаваемых адресов, no-dhcp-interface — запретить на указанных интерфейсах выдавать IP-адреса. Необходимые настройки протокола IP для передачи DHCP-клиентам dnsmasq сформирует автоматически (маску подсети, шлюз по умолчанию, адрес DNS-сервера). - Запустим еще одну виртуальную машину (клиента), предварительно подключив ее сетевой адаптер к внутренней сети. В системе сетевой интерфейс
настроим на динамическую настройку IP-параметров:
# cat /etc/network/interfaces | grep eth0 auto eth0 iface eth0 inet dhcp
После инициализации сетевой подсистемы на клиенте можно проверить доступ в сети Интернет.
Ключевые термины
Виртуальные частные сети (VPN, Virtual Private Network) - обобщённое название технологий, позволяющих обеспечить одно или несколько сетевых соединений (логическую сеть) поверх другой сети.
xDSL - семейство технологий, использующих абонентские линии DSL (Digital Subscriber Line), "x" cлужит обозначением конкретной технологии.
Трансляция сетевых адресов (NAT, Network Address Translation) - механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса пакетов.
PPPoE (Point-to-point protocol over Ethernet) — сетевой протокол канального уровня передачи кадров PPP через Ethernet. В основном используется xDSL-сервисами. Предоставляет дополнительные возможности (аутентификация, сжатие данных, шифрование).
3G (технологии мобильной связи 3 поколения) — набор услуг, который объединяет как высокоскоростной мобильный доступ с услугами сети Интернет, так и технологию радиосвязи.
PPTP (Point-to-Point Tunneling Protocol) — туннельный протокол типа точка-точка, позволяющий компьютеру устанавливать защищённое соединение с сервером за счёт создания специального туннеля в стандартной, незащищённой сети. PPTP помещает (инкапсулирует) кадры PPP в IP-пакеты для передачи IP-сети.
Краткие итоги
- Обычно для доступа к сети Интернет клиенту необходимо устанавливать специальное оборудование, а также настраивать логические подключения с использованием технологий VPN. Широко распространенными технологиями доступа в Интернтет являются: xDSL, 3G, Wi-Fi, WiMax, Ethernet и т.д.
- Для сегмента локальной сети доступ в Интернет может быть организован с помощью граничного устройства с включенной функцией трансляции адреса источника: при взаимодействии с узлом Интернет адрес локального узла подменяется Интернет-адресом граничного устройства в соответствии с таблицей трансляции. Альтернативным вариантом является установка прикладного прокси-сервера.
- Для публикации локального информационного ресурса в сети Интернет может использоваться трансляция адреса получателя на граничном устройстве: обращения узлов Интернет к определенному порту внешнего адреса граничного устройства преобразуются в обращения к данному узлу локальной сети.
- Важным элементом во взаимодействии узлов Интернет является система DNS. Для корректного определения IP-адресов по символьным именам на узле должен быть настроен адрес DNS-сервера.
Упражнения
- С помощью двух виртуальных машин в среде VirtualBox реализовать пример 12.1
- С помощью двух виртуальных машин и основной системы в среде VirtualBox реализовать пример 12.3, пример 12.4. Настроить на шлюзе DHCP-сервер для динамической выдачи IP-адресов узлам локальной сети. Разрешить узлам локальной сети выход во внешнюю сеть 10.0.0.0/8 и доступ к шлюзу, а прочий трафик запретить.