Компьютерная распределённая система для получения информации о доменах (DNS)

Распределённая база данных DNS, ее поддержка с помощью иерархии DNS-серверов, взаимодействующих по определённому протоколу. Разработка оконной утилиты для обращения к системе DNS (определение доменных имен по IP-адресам и IP-адресов по доменным именам).

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 05.01.2013
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Оглавление

  • Введение
  • 1. Техническое задание
  • 2. Анализ технического задания
  • 3. Проектирование
  • Диаграмма вариантов использования
  • Диаграмма классов
  • Блок-схемы алгоритмов
  • 4. Реализация
  • 4.1 Описание разработанного ПО
  • Тестирование
  • Заключение
  • Приложения

Введение

DNS (англ. Domain Name System - система доменных имён) - компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компьютера или устройства), получения информации о маршрутизации почты, обслуживающих узлах для протоколов в домене (SRV-запись).

Распределённая база данных DNS поддерживается с помощью иерархии DNS-серверов, взаимодействующих по определённому протоколу.

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

Начиная с 2010 года, в систему DNS внедряются средства проверки целостности передаваемых данных, называемые DNS Security Extensions (DNSSEC). Передаваемые данные не шифруются, но их достоверность проверяется криптографическими способами. Внедряемый стандарт DANE обеспечивает передачу средствами DNS достоверной криптографической информации (сертификатов), используемых для установления безопасных и защищённых соединений транспортного и прикладного уровней.

иерархия сервер доменное имя

1. Техническое задание

Разработать оконную утилиту, для обращения к системе DNS (определение доменных имен по IP-адресам, IP-адресов по доменным именам и т.д. - аналог утилиты NSLookUp).

2. Анализ технического задания

В настоящее время существует множество утилит и сервисов, позволяющих узнать IP-адрес по доменному имени и наоборот.

Одной из наиболее распространенных является утилита NSLookUp, включенная корпорацией Microsoft в ОС Windows.

Работа c NSLookUp происходит в консоли, где пользователь при помощи тех или иных команд может узнать необходимую информацию.

Так например запрос на вывод IP-адресов некоторого домена (wikipedia.org) выглядит следующим образом.

>nslookup wikipedia.org

wikipedia.org

Adresses: 74.86.197.160

208.87.34.15

Исходя из примера, видим, что NSLookUp выводит все IP-адреса, закрепленные за доменом.

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

Приложение не должно быть перегружено лишними функциями и его интерфейс должен быть интуитивно-понятен даже неопытному пользователю.

3. Проектирование

Диаграмма вариантов использования

Рисунок 4.1 - Диаграмма вариантов использования

Диаграмма классов

Рисунок 4.2 - Диаграмма классов

Блок-схемы алгоритмов

Рисунок 4.3 - Блок-схемы алгоритмов работы с системой DNS

Рисунок 4.4 - Блок-схема алгоритма нажатия на кнопку действия

4. Реализация

4.1 Описание разработанного ПО

Было разработано следующее приложение:

Рисунок 5.1 - Скриншот работающего приложения (вывод списка IP-адресов)

Рисунок 5.2 - Скриншот работающего приложения (вывод доменного имени)

Как видно из скриншотов, разработанная программа представляет собой простое оконное приложение.

Для удобства пользователя были добавлены несколько необязательных кнопок, например кнопка копирующая текст из выделенной строки ListBox'а в буфер обмена, кнопка копирующая текст из буфера обмена в TextBox и кнопка, очищающая TextBox.

Тестирование

Функциональное тестирование

Функциональное тестирование также известно, как тестирование методом "черного ящика". При этом неизвестна внутренняя структура ПО и исходные коды, но известна спецификация продукта.

Первым делом проверим работы ПО на корректных данных.

Рисунок 5.1 - Тестирование на корректных данных

Далее попробуем ввести несуществующее доменное имя или бессмысленный набор символов.

Рисунок 5.2 - Ввод неверного доменного имени

Как видно из рисунка (5.2), при вводе неверного доменного имени программа сообщает пользователю об ошибке.

Теперь проверим работу программы в случае ввода несуществующего, либо неверного IP-адреса.

Рисунок 5.3 - Ввод неверного IP-адреса

Как видно из рисунка (5.3), при вводе неверного IP-адреса программа сообщает пользователю об ошибке.

Таким образом тестовый набор представляет из себя следующее:

Входные данные

Результат

213.180.204.11

metrika. yandex.ru

wikipedia.org

208.80.152.201

wikipedia124.org

Сообщение об ошибке

jflksjdflkdsjhfkjsdf

Сообщение об ошибке

192.168.1.9

Сообщение об ошибке

999.999.999.999

Сообщение об ошибке

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

При вводе некорректных данных программа уведомляет пользователя об ошибке.

Заключение

В ходе выполнения курсового проекта было разработано приложение, выполняющее работу с системой DNS (определение доменных имен по IP-адресам, IP-адресов по доменным именам).

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

Приложения

Network. cs

using System;

using System. Collections. Generic;

using System. Linq;

using System. Text;

using System.net;

using System. Windows. Forms;

namespace DNStoIP

{

class Network

{

public static List<string> IPlist = new List<string> ();

public static string HostName;

public static void DNStoIP (string DNS)

{

try

{

IPAddress [] addresslist = Dns. GetHostAddresses (DNS);

foreach (IPAddress address in addresslist)

{

IPlist. Add (address. ToString ());

}

}

catch (Exception e)

{

MessageBox. Show ("Введен несуществующий либо неверный адрес!");

}

}

public static void IPtoDNS (string IP)

{

try

{

IPAddress address = IPAddress. Parse (IP);

IPHostEntry entry = Dns. GetHostEntry (address);

HostName = entry. HostName. ToString ();

}

catch (Exception e)

{

MessageBox. Show ("Введен несуществующий либо неверный адрес!");

}

}

}

}

Form1. cs

using System;

using System. Collections. Generic;

using System.componentModel;

using System. Data;

using System. Drawing;

using System. Linq;

using System. Text;

using System. Windows. Forms;

using System.net;

namespace DNStoIP

{

public partial class Form1: Form

{

public Form1 ()

{

InitializeComponent ();

}

private void button1_Click (object sender, EventArgs e)

{

IPAddress ip;

if (IPAddress. TryParse (textBox1. Text, out ip) == true)

{

listBox1. Items. Clear ();

Network. HostName = string. Empty;

Network. IPtoDNS (textBox1. Text);

listBox1. Items. Add (Network. HostName);

}

else

{

listBox1. Items. Clear ();

Network. IPlist. Clear ();

Network. DNStoIP (textBox1. Text);

foreach (string s in Network. IPlist)

{

listBox1. Items. Add (s);

}

}

}

private void button3_Click (object sender, EventArgs e)

{

this. Close ();

}

private void textBox1_KeyPress (object sender, KeyPressEventArgs e)

{

if (e. KeyChar. Equals ( (char) 13))

{

button1_Click (sender, e);

}

}

private void button2_Click (object sender, EventArgs e)

{

Clipboard. SetText (listBox1. SelectedItem. ToString ());

}

private void button4_Click (object sender, EventArgs e)

{

textBox1. Clear ();

}

private void button5_Click (object sender, EventArgs e)

{

IDataObject iData = Clipboard. GetDataObject ();

if (iData. GetDataPresent (DataFormats. Text))

{

textBox1. Text = (String) iData. GetData (DataFormats. Text);

}

else

{

MessageBox. Show ("Возможно буфер обмена пуст или содержит данные неверного формата!");

}

}

}

}

Размещено на Allbest.ru


Подобные документы

  • Предназначение службы доменных имен (DNS). Трансляция доменных имен в IP-адреса и обратно как основная задача DNS-серверов, их иерархичность. Вертикальные и горизонтальные связи. Использование рекурсивных серверов в локальных сетях. База данных DNS.

    контрольная работа [450,7 K], добавлен 30.06.2009

  • История создания компьютерных информационных систем. Развитие системы управления базой данных. Принципы и правила построения и функционирования распределённых баз данных (РБД). Проблемы и особенности РБД. Использование Internet/Intranet технологий.

    курсовая работа [1,1 M], добавлен 06.02.2011

  • Изучение структуры доменных имен и описание возможностей их системы по использованию символьных наименований узлов в IP-сетях. Записи ресурсов домена и функции сети по расширению имен и зон обратного просмотра. Делегирование ответственности за домены.

    презентация [104,2 K], добавлен 25.10.2013

  • Отображение физических адресов на IP-адреса: протоколы ARP и RARP. Примеры организации доменов и доменных имен. Автоматизация процесса порядка назначения IP-адресов узлами сети. Маска подсети переменной длины. Протокол межсетевого взаимодействия IP.

    контрольная работа [145,7 K], добавлен 23.01.2015

  • Средства и функции, обеспечивающие доступность, конфиденциальность или защиту информации или связи. Равномерно распределённая случайная последовательность и её свойства, алгоритмы генерации. Этапы развития и виды криптографии, цифровая подпись, шифры.

    курс лекций [538,0 K], добавлен 19.11.2009

  • Компьютерные сети: основные понятия, преимущества, проблемы, история развития. Разработка технологии межсетевого взаимодействия. Протоколы, службы и сервисы, мировая статистика Интернета. Адресация узлов сети. Система доменных имен. База данных DNS.

    презентация [3,9 M], добавлен 25.11.2013

  • Интернет и его возможности. Распространенный и недорогой способ подключения к интернет. Схема передачи информации по протоколу TCP/IP. Характеристики адресов разного класса. Поисковые системы, способы поиска и скачивания информации в глобальной сети.

    курсовая работа [245,6 K], добавлен 25.09.2013

  • Концептуальное проектирование базы данных: разработка схемы и структуры таблиц, описание атрибутов. Реализация базы данных в среде СУБД MS SQL Server 2000. Основные принципы создания таблиц. Доступ и обработка данных с помощью утилиты Enterprise Manager.

    курсовая работа [3,8 M], добавлен 22.01.2013

  • Классы IP-адресов. Идентификаторы сетей и узлов. Преобразование IP-адреса из двоичного формата в десятичный. Организация доменов и доменных имен. Определение адреса назначения пакета. Соглашения о специальных адресах: broadcast, multicast, loopback.

    курсовая работа [241,9 K], добавлен 09.11.2014

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

    курсовая работа [2,8 M], добавлен 30.11.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.