[C#]Problema chat con TcpListener e TcpClient

di il
39 risposte

[C#]Problema chat con TcpListener e TcpClient

Ho creato un piccolissimo programma che da la possibilita di inviare una stringa via connessione tcp. In locale funziona il problema si crea quando tento di connettermi usando l'ip publico e mi da "Impossibile stabilire la connessione. Rifiuto persistente del computer di destinazione 87.17.XXX.XXX:25565"
P.S. La porta 25565 è sicuramente aperta visto che io ho ospitato anke un server minecraft
come posso risolvere ecco il codice

Client

 TcpClient client = null;
        NetworkStream flusso = null;

        public Form1()
        {
            InitializeComponent();
            client = new TcpClient();
            client.Connect("127.0.0.1", 25565);
            flusso = client.GetStream();
            timer1.Start();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if (flusso.DataAvailable)
            {
                byte[] buffer = new byte[client.Available];
                flusso.Read(buffer, 0, client.Available);
                textBox1.Text = Encoding.ASCII.GetString(buffer);
            }
        }

Server


 TcpListener server = null;
        TcpClient client = null;
        NetworkStream flusso = null;
        public Form1()
        {
            InitializeComponent();
            server = new TcpListener(IPAddress.Parse("127.0.0.1"), 25565);
            server.Start();
            timer1.Start();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if (server.Pending())
            {
                client = server.AcceptTcpClient();
                flusso = client.GetStream();
                timer1.Stop();
            }
        }

        private void inviaBtn_Click(object sender, EventArgs e)
        {
            byte[] testo = Encoding.ASCII.GetBytes(textBox1.Text);
            flusso.Write(testo, 0, testo.Length);
        }


39 Risposte

  • Re: [C#]Problema chat con TcpListener e TcpClient


    Hai verificato che qualche firewall e antivirus o software non limiti o blocchi l'accesso?
    Forse è ciò.
    Ciao Lele
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Ho disattivato firewall e antivirus e mi da errore "Impossibile stabilire la connessione. Risposta non corretta della parte connessa dopo l'intervallo di tempo oppure mancata risposta dall'host collegato 87.17.XXX.XX:25565"
    Grazie della risposta
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Hai fatto un ping su quel ip?
    fai ping 87.17.xxx.xx ok?
    Ciao Lele
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Scusa l'ignoranza ma che significa fare ping
  • Re: [C#]Problema chat con TcpListener e TcpClient

    L'ho fatto e da esito positivo dati inviati e ricevuti = 4 cmq ho un dubbio è possibile che il programma non funzioni perche io uso un solo pc con una sola rete ?
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Ma i pc sono collegati in rete? stanno collegati su cavo cross? sono due pc o server?
    Se ci fornisci maggiori dettagli vediamo che riusciamo a fare.
    Ciao Lele
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Hai ragione allora io uso due pc collegati a reti diverse via Wifi alice e mi da quel maledetto errore
  • Re: [C#]Problema chat con TcpListener e TcpClient

    CristianMascia97 ha scritto:


    Hai ragione allora io uso due pc collegati a reti diverse via Wifi alice e mi da quel maledetto errore
    Scusate intromissione,
    io non conosco il C# ma l'IP che vedo nei sorgenti non deve essere quello di loopback ma quello definito per la ethernet. Mi viene in mente una storiella di un craker che si è distrutto il proprio sistema credendo che l'indirizzo 127.0.0.* fosse l'IP della vittima
  • Re: [C#]Problema chat con TcpListener e TcpClient

    La rete Alice non permette di ricevere connessioni in ingresso da client che originano dallo stesso IP.

    Fai provare il client da un tuo amico che stia su un'altra rete.
  • Re: [C#]Problema chat con TcpListener e TcpClient

    oregon ha scritto:


    La rete Alice non permette di ricevere connessioni in ingresso da client che originano dallo stesso IP.
    Non per essere OT, ma non capisco questa affermazione. Nessuna rete instrada verso internet lo stesso IP di origine se non attraverso un proxy o tunnel; la comunicazione avviene in loopback sull'interfaccia lo.
    Se OP ha una rete locale puo' usare gli indirizzi privati, altrimenti per internet (ma cosa cambia?) usare un socket proxy come detto prima. Ciao
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Qualcuno è disposto a fare la prova con me perche ho degli amici un po ignorantelli
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Io avrei difficoltà.
    Però se guidi piano piano i tuoi amici, magari viene fuori qualcosa di carino.
    Facci sapere come va a finire.
    Complimenti per il progetto, molto interessante.

    Ciao Lele
  • Re: [C#]Problema chat con TcpListener e TcpClient

    In effetti non sono stato preciso ...

    Se il client e il server stanno sullo stesso computer collegato al router (di Alice e probabilmente anche su PC diversi ma collegati allo stesso router), la comunicazione non è consentita attraverso l'IP pubblico (forse una policy del provider).

    Il tuo IP pubblico può essere invece raggiunto da un altro PC esterno.

    Passami il programma del client zippato e proviamo.
  • Re: [C#]Problema chat con TcpListener e TcpClient

    Eccoti il link http://www.mediafire.com/?ov8b6jz1dic9v3 appena mi risponderai ti do il mio ip visto che potrebbe cambiare. Grazie tantissimo
Devi accedere o registrarti per scrivere nel forum
39 risposte