отчет архитектура
.docxФГБОУ ВО
Уфимский Государственный Авиационный Технический Университет
Кафедра ВМиК
Отчет по лабораторной работе №1
«Основы работы с Internet (комплексом протоколов TCP/IP)»
по дисциплине
«Архитектура вычислительных систем и компьютерные сети»
Выполнили:
студенты группы МО-217
Ибрагимова Карина Базретдиновна
Шакиров Айдар Рушанович
Проверил:
Канд. техн. наук, доцент
Валеев Руслан Сагитович
Уфа 2019
Цель работы
Получение навыков установки и конфигурирования стека протоколов TCP/IP, определение работоспособности интересующего узла или канала связи.
Ход выполнения работы:
Получение первоначальной информации. Определение для задаваемого пользователем диапазона адресов работоспособности каждого узла и его символьного (доменного) имени.
async private Task Scan()
{
dataGridView1.Rows.Clear();
int startIP = BitConverter.ToInt32(IPAddress.Parse(IpStartTxt.Text).GetAddressBytes().Reverse().ToArray(), 0);
int endIP = BitConverter.ToInt32(IPAddress.Parse(IpEndTxt.Text).GetAddressBytes().Reverse().ToArray(), 0);
var ping = new Ping();
for (int i = startIP; i <= endIP; i++)
{
var currentIP = new IPAddress(BitConverter.GetBytes(i).Reverse().ToArray());
var reply = ping.Send(currentIP, 500);
IPHostEntry host;
string hostName;
try
{
host = await Dns.GetHostEntryAsync(currentIP);
hostName = host.HostName;
}
catch (Exception)
{
hostName = "";
}
dataGridView1.Rows.Add(currentIP.ToString(), hostName, reply.Status);
}
}
Анализ сети. Определение следующих параметров: адрес сети, адрес шлюза, маска, широковещательный адрес.
private void GetInfo(int numberAdapter)
{
var adapter = NetworkInterface.GetAllNetworkInterfaces()[numberAdapter];
MacTxt.Text = adapter.GetPhysicalAddress().ToString();
if (adapter.GetIPProperties().GatewayAddresses.Count > 0)
{
var ipGate = adapter.GetIPProperties().GatewayAddresses[0].Address;
IpGateTxt.Text = ipGate.ToString();
}
else IpGateTxt.Text = "отсутствует";
var imyIp = adapter.GetIPProperties().UnicastAddresses.Last().Address;
var mask = adapter.GetIPProperties().UnicastAddresses[1].IPv4Mask;
MaskTxt.Text = mask.ToString();
var network = new IPAddress(imyIp.Address & mask.Address);
IpNetTxt.Text = network.ToString();
//забрать байты, перевернуть, записать обратно
byte[] bytes = mask.GetAddressBytes();
for (int i = 0; i < bytes.Length; i++)
{
bytes[i] = (byte)(bytes[i] ^ byte.MaxValue); //переворот битов
}
var wildcardMask = new IPAddress(bytes);
var broadcast = new IPAddress(network.Address | wildcardMask.Address);
BroadcastTxt.Text = broadcast.ToString();
}
Интерфейс программы:
Заключение:
В ходе лабораторной работы получены навыки установки и конфигурирования стека протоколов TCP/IP, определения работоспособности интересующего узла или канала связи.