Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > С#

С# Средство разработки на платформе .Net

Ответ
 
Опции темы
Старый 10.11.2010, 18:45   #1
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Сообщение Socket

Пишу я чат.
Написал клиента и сервера.
Сервер слушает 5555 порт, а клиент отсылает ему сообщения.
Сервер работает норм.
А вот клиент не очень. В клиенте надо указать IP куда слать сообщения, так вот, если указать локальный (127.0.0.1) или локальной сети (192.168.1.2) то всё работает, но если указать IP который виден из нэта (2ip.ru можно посматреть), то нихера не работает. 99,999% из за того что у меня серый IP. Как быть? Например чтобы программка работала как аська. Ставить сервер на белый IP чтоли? А подругому?
Взарание спс

А чуть не забыл, вот код клиента:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.IO;

namespace 
locak2
{
    class 
Client
    
{
        static 
void Main(string[] args)
        {
            
TcpClient tcp;
            
//StreamReader read;
            
StreamWriter write;
            
NetworkStream netsteam;
            
Socket soc;
            try
            {
                
tcp = new TcpClient();
                
soc tcp.Client;
                
soc.Connect(IPAddress.Parse("192.168.1.2"), 5555);
                
netsteam tcp.GetStream();
                
write = new StreamWriter(netsteam);
                
Console.WriteLine("Подключение удалось!");
                while (
true)
                {
                    
write.WriteLine(Console.ReadLine());
                    
write.Flush();
                }
            }
            catch (
Exception ex)
            {
                
Console.WriteLine(ex.Message);
            }
            
Console.ReadKey(true);
        }
    }



--------------
блин только что заметил что в названии темы опечатка :D (уже поправили)
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 18:49   #2
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: cocket

Еще бы название темы правильно написал. (поправил название)
По теме: без белого IP никак.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
den (10.11.2010), Reks888 (10.11.2010)
Старый 10.11.2010, 18:52   #3
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: cocket

По теме: без белого IP никак.
Спасибо за лаконичный ответ.
Всё, вопросов нет
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 19:11   #4
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Socket

Еще бы название темы правильно написал.
По теме: без белого IP никак.
Хм а определить по dns ip и потом слать сообщения на полученный ip?
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 19:12   #5
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Socket

Сообщение от h1dd3n Посмотреть сообщение
Хм а определить по dns ip и потом слать сообщения на полученный ip?
А у его компьютера есть имя чтоли?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 19:17   #6
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Socket

Хм а определить по dns ip и потом слать сообщения на полученный ip?
ip серый, значит и имени либо нет, либо оно тоже какбы "серое"
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 20:58   #7
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Socket

А компонент DirectPlay мне не поможет?
Просто прочитал что умные дятьки из микрософта реализовали там такую возможность.
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 21:01   #8
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Socket

Это какую? Которую провайдер на своем роутере закрыл?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 21:09   #9
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Socket

ясно, значит без белого никак, жаль
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 21:15   #10
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Socket

обычно это стоит у провайдера 50р в месяц примерно...
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 10.11.2010, 21:17   #11
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Socket

обычно это стоит у провайдера 50р в месяц примерно...
у нашего 150 - 200
Ну мне это не надо, я просто так хотел програмку проверить.
Ну скорей всего будет работать, на локали же работает
(Offline)
 
Ответить с цитированием
Старый 11.11.2010, 00:33   #12
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Socket

Юзай ДинДнс или что-то из той степи. Какие проблемы-то вы нашли? Я что-то не понимаю.

UPD: Или у него провайдер режет коннекты на порты? О_о Это же бред какой-то.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
h1dd3n (11.11.2010)
Старый 11.11.2010, 01:45   #13
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Socket

ДинДнс возможно поможет, хотя не знаю.

Подключение к внешнему ip когда сервер на локальном - вот проблема. Как за Nat пробиться?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 11.11.2010, 17:21   #14
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Socket

ДинДнс возможно поможет, хотя не знаю.
Это чтоли http://ru.wikipedia.org/wiki/DynDNS ?
(Offline)
 
Ответить с цитированием
Старый 12.11.2010, 17:10   #15
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Socket

Это что-ли http://www.dyndns.com/
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:49.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com