3.3 Программа GetIp
GetIP – это программа, написанная на языке программирования C#, которая получает все IP-адреса локальной машины.
Данная программа компилировалась в: Visual Studio .NET & Windows XP Pro. Тестировалась на Win2K Server + WinXP Pro.
Зачем может понадобиться узнать IP-адреса на локальной машине? Компьютер может иметь несколько IP адресов с одной NIC, и при создании сокетного приложения не всегда хочется привязываться (биндится) ко всем IP-адресам. Например у нас есть множество серверов и на каждом по крайней мере 32 IP-адреса и по несколько сетевых интерфейсов. Есть сервисы, работающие на 80 порту и есть необходимость запускать IIS тоже на 80 порту. Соответственно, нужно развести сервисы и IIS строго по определённым IP-адресам.
Чтобы выполнить такую задачу, необходимо перечислить все IP-адреса на машине и связать каждое приложение с определённым адресом в зависимости от существующей маршрутизации для каждой подсети. Однако пул сокетов в IIS по умолчанию захватывает все IP-адреса на локальной машине. Поэтому, чтобы привязать новый сервис к определённому IP-адреса, необходимо сначала отключить в IIS пул сокетов.
Можно привести другой пример необходимости получения списка IP-адреса, когда в локальном компьютере установлено две сетевых карты (одна смотрит в интернет, а другая - в локальную сеть) и необходимо чтобы Ваше приложение слушало сокет только на сетевом интерфейсе, подключённом к интернету.
В любом случае, существует стандартный подход перечисления всех локальных IP-адресов. Ниже приведён код программы иллюстрирующий это на C#:
using System;
using System.Net;
namespace GetIPCS
{
/// <summary>
/// Получаем IP адреса локальной машины
/// </summary>
class classGetIPCS
{
/// <summary>
/// Получаем IP адреса локальной машины
/// </summary>
[STAThread]
static void Main(string[] args)
{
// Получаем имя компьютера
String strHostName = Dns.GetHostName();
Console.WriteLine("Host Name: " + strHostName);
// Ищем хост по имени
IPHostEntry iphostentry = Dns.GetHostByName(strHostName);
// Перечисляем IP адреса
int nIP = 0;
foreach(IPAddress ipaddress in iphostentry.AddressList)
{
Console.WriteLine("IP #" + ++nIP + ": " +
ipaddress.ToString());
}
}
}
}
3.4 Программа голосовой Lan_Chat
Последняя задача, поставленная передо мной в ходе преддипломной практики - это написать программу для быстрого голосового общения сотрудников на любом языке программирования.
Раннее на «Научно-исследовательских конференциях» мною были представлены такие программы как Lan_Chat (программа для общения по сети) и Bluetooth_Chat (программа для общения по средствам Bluetooth). Первая была написана в ходе выполнения индивидуального задания учебной практики на 3-м курсе. Работа была выполнена успешно, но программа имела свои недостатки. В результате чего было получено новое задание написание программы, которая бы позволяла пользователю общаться с коллегами и начальством без написания текстовых сообщений, и не тратя время на исправление ошибок. Собственно это задание и повлияло на выбор темы дипломного проекта.
Программа была реализована на языке программирования C#. Были изучены звуковые кодеки и преобразование звуковых сигналов. Программа работает как в сети lan (что было непосредственно нужно заказчику), так и в сети internet.
Программный код и само приложение будет представлено в дипломном проекте.
Заключение
В ходе прохождения преддипломной практики в компании ООО "Серебряный век — Риэлти" были закреплены знания в области обслуживания компьютеров, локальных сетей, IP-видеонаблюдения и передачи и преобразования звуковых сигналов. Кроме этого были получены знания в области настройки и администрирования сети.
Так же за время прохождения преддипломной практики были получены индивидуальные навыки:
1) получен практический опыт работы с технической документацией;
2) произведена полная настройка сетевого дискового массива DNS-300;
3) работа с сетевыми принтерами;
4) сконфигурировать коммутатор D-Link 3624i через консоль
5) получение дополнительных знаний за счет прослушивания семинаров;
6) была написана программа GetIP
7) реализация и внедрение в работу компании программы голосовой Chat
8) заключительная наладка работы офиса за счет решения большинства проблем в персональных компьютерах.
Поставленные передо мной задачи и индивидуальные задания были выполнены успешно.
Рекомендуемая оценка – ОТЛИЧНО.
Руководитель производственной практики __________
Список литературы
http://www.citforum.ru
Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 3-е изд. – СПб.: Питер, 2007, - 958 с.: ил.
Семенов А.Б., Стрижаков С.К., Сунчелей И.Р. Структурированные кабельные системы / Семенов А.Б., Стрижаков С.К., Сунчелей И.Р. – 5-е изд. – М.: Компания АйТи ; ДМК Пресс, 2006. – 640с.: ил.
ГОСТ 2.105 – 95 Общие требования к текстовым документам.
http://www.dlink.ru
Баскаков С.И. Радиотехнические цепи и сигналы: Учебное пособие. - М.: Высшая школа, 2000.