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);
}