Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247

Подключение сокетов во внутренней сети

20.02.2014, 15:40. Показов 1800. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток!
Имеется TCP клиент и сервер (исп. сокеты)
Каким образом можно соединить два компьютера в одной сети (используя данный сервер одном компе, а клиент на другом)? Какие адреса указывать (на прослушивание на сервере и на подключение к серверу в клиенте)?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.02.2014, 15:40
Ответы с готовыми решениями:

Подключение сокетов, IPEndPoint
долгое время пытаюсь понять процесс создания чата в локальной сети, но один из важнейших моментов до сих пор для меня остается загадкой....

По подключением сокетов | Подключение к серверу vk.com
Доброго времени суток! Хотелось бы узнать, про возвращаемое значение в сокетах. Они не верные? И если не верные то почему? #include...

Построение сети в теории, на основе сокетов
Построение сетей на основе soket api - протокол только TCP\IP Раскажите в теории как основано это, кодов не надо так токово, просто...

18
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 15:46
Сервер прослушивает не адрес а порт, на клиенте указывается IP сервера и порт который слушает сервер
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
20.02.2014, 16:02  [ТС]
Цитата Сообщение от EVG-1980 Посмотреть сообщение
Сервер прослушивает не адрес а порт, на клиенте указывается IP сервера и порт который слушает сервер
На сервере в любом случае при вызове Bind указывается связка IP+порт
0
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 16:07
CSharpCraft, укажи на сервере IP - 0.0.0.0 , будет слушать все IP (все сетевые карты что есть в нем)

Я делал на серваке так, но это было давно и криво

C#
1
2
3
4
5
6
7
8
9
10
11
12
public  string[] GetIP()
        {
            IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());
            string[] IpList = new string[ipHostInfo.AddressList.Length + 1];
            int i = 0;
            foreach (IPAddress ip in ipHostInfo.AddressList)
            {
            if (ip.GetAddressBytes().Count() == 4) { IpList[i] = ip.ToString(); i++; }
            }
            IpList[i] = "0.0.0.0";
            return IpList;
        }
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
20.02.2014, 16:09  [ТС]
Цитата Сообщение от EVG-1980 Посмотреть сообщение
CSharpCraft, укажи на сервере IP - 0.0.0.0 , будет слушать все IP (все сетевые карты что есть )
Т.е. IPAddress.Any? А на клиенте нужно указать IP сервера во внутренней сети (допустим, 192.168.0.41)?
0
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 16:14
да , но лучше пингануть и посмотреть и если IP динамический у сервака то нужно обращаться к нему по имени и получать текущий IP
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
20.02.2014, 16:18  [ТС]
Цитата Сообщение от EVG-1980 Посмотреть сообщение
да , но лучше пингануть и посмотреть и если IP динамический у сервака то нужно обращаться к нему по имени и получать текущий IP
Динамический
Т.е. обязательно нужно обратиться по имени? Когда я запускаю серверную часть на сервере он показывает его IP, я могу просто ввести его в клиенте?

Добавлено через 1 минуту
Речь идет о внешнем IP или о внутреннем? Внутренний у него не меняется (192.168.0.41)
0
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 16:19
Цитата Сообщение от CSharpCraft Посмотреть сообщение
Т.е. обязательно нужно обратиться по имени? Когда я запускаю серверную часть на сервере он показывает его IP, я могу просто ввести его в клиенте?
Да можешь , но будешь это делать каждый раз?)

почитай про Dns.GetHostEntry(); Dns.GetHostName();


Если ты запускаешь И клиета И ссервер во внутренней сети то тебе нужен внутренний IP
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
20.02.2014, 16:23  [ТС]
Цитата Сообщение от EVG-1980 Посмотреть сообщение
Если ты запускаешь И клиета И ссервер во внутренней сети то тебе нужен внутренний IP
Логично

Допустим:
Сервер на первом (из двух) интерфейсов получил 192.168.0.41. На сервере начинается прослушивание на 0.0.0.0: port
Клиент подключаю к 192.168.0.41: port

При таком варианте клиент не может подключится к серверу (SocketException - вовремя не получает ответа)
0
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 16:27
CSharpCraft, отлаживай программы на одном компе и клиент и сервер , запускай одновременно на 1 компе , если все работает нормально на одной машине, дальше дело в настройках бредмауэров и фаирволов

Писал все и тестировал на одной машине , при переносе на другую столкнулся именно с этим
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
20.02.2014, 16:30  [ТС]
Цитата Сообщение от EVG-1980 Посмотреть сообщение
CSharpCraft, отлаживай программы на одном компе и клиент и сервер , запускай одновременно на 1 компе , если все работает нормально на одной машине, дальше дело в настройках бредмауэров и фаирволов

Писал все и тестировал на одной машине , при переносе на другую столкнулся именно с этим
Да, на одном компе все прекрасно работает. Firewall'ов нет, брандмауэр выключен
0
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 17:51
CSharpCraft, какой порт слушает сервер м.б. порт закрыт если на 1 машине работает все нормально , ищи косяк либо в неверно IP указываешь на стороне клиента либо брандмауэр...

связь с серваком можно проверить даже штатными средствами винды например telnet

Добавлено через 3 минуты
еще есть прога называется Tcpview , показывает что в процессах висит и какой порт слушает , так же показывает кто соединяется и по какому порту

Добавлено через 1 час 13 минут
Забыл сказать касперский тоже зло, причем порой молчаливое зло
1
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
20.02.2014, 18:14  [ТС]
Что-то странное... ничего, что могло бы препятствовать подключению нет. Адреса и порты устанавливаются корректно, пробовал и 1 и 11000 (который использовался ранее), и 5500, 3110 и еще много. С портом на 2ip.net проверял, говорит что закрыт (тот же результат на одной машине).
Вот тут вычитал Клиент-Сервер через интернет , может быть подобная проблема (хотя в данной ситуации доступ из вне не нужен), сегодня еще проверю.
Может быть нужно что-то установить в настройках маршрутизатора?
0
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 18:35
если на одной машине оба приложения нормально работают то должно работать и на 2, ибо соединение идет по тому же принципу что на одной.

Цитата Сообщение от CSharpCraft Посмотреть сообщение
Клиент-Сервер через интернет
это тебе не нужно , ибо ты в локальной сети запускаешь и клиента и сервера. Через интернет надо пробрасывать порты.

Порты до 10000 тысяч лучше вообще не трогать т.к. их используют другие приложения например 25 порт почтовая программа , 80 и 8080 обычно инет и т.д.

скачай Tcpview она ничего не весит запусти обе программы на 1 компе и посмотри
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
20.02.2014, 18:48  [ТС]
Цитата Сообщение от EVG-1980 Посмотреть сообщение
скачай Tcpview она ничего не весит запусти обе программы на 1 компе и посмотри
На одном компе норм - отображаются и сервер и клиент, все нормально обменивается. На сервере в момент подключения видно только сам сервер, ничего больше не подключается.

Цитата Сообщение от EVG-1980 Посмотреть сообщение
Порты до 10000 тысяч лучше вообще не трогать
Поставил 23771
0
192 / 199 / 82
Регистрация: 11.04.2013
Сообщений: 1,086
20.02.2014, 18:59
Цитата Сообщение от CSharpCraft Посмотреть сообщение
ничего больше не подключается.
попробуй в роли сервера другой комп , сори я не экстрасенс больше ничем помочь не могу, ибо хз че там у тебя с сеткой

Как вариант попробуй скачать что нибудь типа готового "чата для локальной сети" и протестировать у себя
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
21.02.2014, 12:48  [ТС]
скачал чат для локальной сети: на одном компе норм, а когда с одного на другой подключаюсь та же проблема:
Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера 192.168.0.41:7000
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
21.02.2014, 17:26
компьютеры то в сети вообще?
пинг например пройдет?
0
 Аватар для CSharpCraft
58 / 58 / 9
Регистрация: 09.01.2013
Сообщений: 247
21.02.2014, 18:57  [ТС]
Изменил конфигурацию сети, все заработало. Вопрос решен.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.02.2014, 18:57
Помогаю со студенческими работами здесь

Free Unlimited хостинг с поддержкой сети и сокетов
Бесплатный хостинг с поддержкой сети., функций fsockopen и тд. Какой хостинг выбрать? Добавлено через 21 час 25 минут Нужно раз в...

Передача файла по локальной сети с помощью сокетов
Как организовать передачу файла по локальной сети с помощью сокетов? Что нужно писать в программе сервер и в программе клиент

Ping во внутренней сети
Есть 2 компьютера и wi-fi роутер. На 1 компьютере 7 винда, на другом убунта. IP адреса из внутренней сети(роутер раздал им), но пинг между...

информация о ПК внутренней сети
ПК подключен к сети internet через роутер, тем не менее, внешние сервера легко идентифицируют всю информацию о ПК, вплоть до версии ОС. ...

Глюк с доступом к ресурсам внутренней сети
Привет всем! У меня в организации такая сеть: ППОЕ момед(с адресом 192.168.0.1)->свитч->сеть компьютеров организации. Среди этих...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru