Здесь выложу выдержки , которые часто нужны, но не запоминаются в голове.
Комбинация: "IP адрес и номер порта" - называется "сокет"
Пример Сокет 195.34.32.116:53 ,т.е. пакет пойдет на компьютер, имеющий IP адрес 195.34.32.116, на порт 53. А порту 53 соответствует сервер распознавания имен (DNS-сервер), который примет этот пакет.
Список портов, с которыми вам, вероятно, придется столкнуться:
135-139 — эти порты используются Windows для доступа к общим ресурсам компьютера — папкам, принтерам. Не открывайте эти порты наружу, т.е. в районную локальную сеть и Интернет. Их следует закрыть фаерволлом. Также если в локальной сети вы не видите ничего в сетевом окружении или вас не видят, то вероятно это связано с тем, что фаерволл заблокировал эти порты. Таким образом для локальной сети эти порты должны быть открыты, а для Интернета закрыты.
21 — порт FTP сервера.
25 — порт почтового SMTP сервера. Через него ваш почтовый клиент отправляет письма. IP адрес SMTP сервера и его порт (25-й) следует указать в настройках вашего почтового клиента.
110 — порт POP3 сервера. Через него ваш почтовый клиент забирает письма из вашего почтового ящика. IP адрес POP3 сервера и его порт (110-й) также следует указать в настройках вашего почтового клиента
(почтовый SMTP сервер «слушает» 25-й порт, POP3 сервер, обеспечивающий чтение почты из ваших почтовых ящиков «слушает» 110-порт, веб-сервер - 80-й порт и пр.. )
80 — порт WEB-сервера.
3128, 8080 — прокси-серверы (настраиваются в параметрах браузера).
Несколько специальных IP адресов:
127.0.0.1 — это localhost, адрес локальной системы, т.е. локальный адрес вашего компьютера.
0.0.0.0 - так обозначаются все IP-адреса.
192.168.xxx.xxx — адреса, которые можно произвольно использовать в локальных сетях, в глобальной сети Интернет они не используются. Они уникальны только в рамках локальной сети. Адреса из этого диапазона вы можете использовать по своему усмотрению, например, для построения домашней или офисной сети.
TCP/IP — это название набора сетевых протоколов. На самом деле передаваемый пакет проходит несколько уровней. (Как на почте: сначала вы пишете писмо, потом помещаете в конверт с адресом, затем на почте на нем ставится штамп и т.д.).
IP протокол — это протокол так называемого сетевого уровня. Задача этого уровня — доставка ip-пакетов от компьютера отправителя к компьютеру получателю. По-мимо собственно данных, пакеты этого уровня имеют ip-адрес отправителя и ip-адрес получателя. Номера портов на сетевом уровне не используются. Какому порту, т.е. приложению адресован этот пакет, был ли этот пакет доставлен или был потерян, на этом уровне неизвестно — это не его задача, это задача транспортного уровня.
TCP и UDP — это протоколы так называемого транспортного уровня. Транспортный уровень находится над сетевым. На этом уровне к пакету добавляется порт отправителя и порт получателя.
TCP — это протокол с установлением соединения и с гарантированной доставкой пакетов. Сначала производится обмен специальными пакетами для установления соединения, происходит что-то вроде рукопожатия (-Привет. -Привет. -Поболтаем? -Давай.). Далее по этому соединению туда и обратно посылаются пакеты (идет беседа), причем с проверкой, дошел ли пакет до получателя. Если пакет не дошел, то он посылается повторно («повтори, не расслышал»).
UDP — это протокол без установления соединения и с негарантированной доставкой пакетов. (Типа: крикнул что-нибудь, а услышат тебя или нет — неважно).
Над транспортным уровнем находится прикладной уровень. На этом уровне работают такие протоколы, как http, ftp и пр. Например HTTP и FTP — используют надежный протокол TCP, а DNS-сервер работает через ненадежный протокол UDP.
Как посмотреть текущие соединения вашего компьютера с внешним миром?
Текущие соединения можно посмотреть с помощью команды в командной строке windows:
netstat -an
(параметр n указывает выводить IP адреса вместо доменных имен).
Запускается эта команда следующим образом:
«Пуск» - «Выполнить» - набираем cmd - «Ок». В появившейся консоли (черное окно) набираем команду netstat -an и жмем <Enter>. Результатом будет список установленных соединений между сокетами нашего компьютера и удаленных узлов.
Например получаем:
Активные подключения
Имя Локальный адрес Внешний адрес Состояние
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
TCP 91.76.65.216:139 0.0.0.0:0 LISTENING
TCP 91.76.65.216:1719 212.58.226.20:80 ESTABLISHED
TCP 91.76.65.216:1720 212.58.226.20:80 ESTABLISHED
TCP 91.76.65.216:1723 212.58.227.138:80 CLOSE_WAIT
TCP 91.76.65.216:1724 212.58.226.8:80 ESTABLISHED
...
В этом примере 0.0.0.0:135 — означает, что наш компьютер на всех своих IP адресах слушает (LISTENING) 135-й порт и готов принимать на него соединения от кого угодно (0.0.0.0:0) по протоколу TCP.
91.76.65.216:139 — наш компьютер слушает 139-й порт на своем IP-адресе 91.76.65.216.
Третья строка означает, что сейчас установлено (ESTABLISHED) соединение между нашей машиной (91.76.65.216:1719) и удаленной (212.58.226.20:80). Порт 80 означает, что наша машина обратилась с запросом к веб-серверу (у меня, действительно, открыты страницы в браузере).
Утилита ping позволяет определить доступность того или иного узла.
ping удаленный_узел
ipconfig
или для более подробного вывода
ipconfig -all
Эта утилита отображает информацию о всех ваших сетевых подключениях: IP-адрес, маску подсети, шлюз по умолчанию, серверы DNS.
tracert -d удаленный_узел
Отображает все узлы (роутеры, шлюзы - хопы, прыжки) на пути следования пакетов к удаленному узлу, показывая время задержки в миллисекундах или превышение интервала ожидания.
netstat -an
Отображает все текущие установленные соединения между вашим и удаленными узлами и все «слушаемые» сокеты.
Утилита ipconfig -all (с ключом -all) также показывает прописанные DNS серверы – серверы распознавания имен. Проверьте их также, если они были предоставлены провайдером.
Если по IP-адресу узел доступен, а по имени – нет, то значит существует проблема с распознаванием имен. На чьей стороне эта проблема? Если у вас в настройках соединения DNS- серверы заданы (можно также посмотреть командой ipconfig -all) и совпадают с предоставленными провайдером, то проблема – на стороне провайдера, с его DNS-серверами – или с их доступностью или с их работой. С вашей же стороны все нормально – узлы по IP-адресам видны (откликаются), DNS-серверы прописаны правильно, но распознавание по именам не работает.
Утилиту для тестирования DNS-серверов:
nslookup имя_узла ip_днс_сервера
ip_днс_сервера можно не указывать – тогда будет использоваться первичный ДНС-сервер из текущих настроек вашего Интернет-соединения.
Эта утилита делает запрос ДНС-серверу «Какой IP-адрес соответствует этому имени узла?» и отображает ответ.
Если интересно, то можно и более точно определить место «затыка» командой tracert, например:
tracert -d 91.76.64.1
или
tracert -d stream.ru (можно указать любой другой узел).
Эта команда отобразит цепочку всех промежуточных узлов, через которые проходит пакет. Если после некоторого узла пойдут сплошные тайм-ауты, то там и проблема.
Топология небольших сетей.
Реализация сети на базе FreeBSD - пошаговая инструкция
В этой статье рассмотрена реализация простой (офисной или домашней) локальной сети c выходом в Интернет на базе операционной системы FreeBSD.
Как безболезненно перенести сайт на другой хостинг
Выбор сетевых компонентов для простой локальной сети
Сообщение отредактировал IvanAL: 21 Декабрь 2009 - 01:51