Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [java] Server pubblico in java

    Ciao a tutti, come progetto ho intenzione di realizzare un'applicazione client server con server pubblico, ovvero accessibile non solo in locale.
    Per farlo mi sono iscritto al servizio dyndns ed ho provato ad estrarre dal nome di dominio del servizio dyndns il mio ip pubblico, e qui fin qua nessun problema.
    Sto riscontrando problemi però durante l'instaurazione della connessione.
    Al momento ho scritto il seguente codice:

    Lato server:

    codice:
            ServerSocket server=null;
            Socket socketClient=null;
            try
            {
                 server=new ServerSocket(1111);
            }
            catch(IOException ex)
            {
                System.out.println("Errore!");
            }
                    System.out.println("In attesa di una connessione...");
                    socketClient=server.accept();

    Lato client:

    codice:
           Socket socket = null;
            try
            {
                String ip=InetAddress.getByName("NomeDelDominio").getHostAddress();
                System.out.println(ip);
                socket=new Socket(ip,1111);
                System.out.println("Connessione al server avvenuta con successo");
            }
            catch(IOException ex)
            {
                System.out.println("Errore nell'instaurazione della connessione!");
            }

    Qualcuno sa darmi qualche suggerimento?

    Grazie per la disponibilità.
    Ultima modifica di LeleFT; 12-02-2015 a 19:12 Motivo: Aggiunti i tag CODE

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Sposto nel forum Java.
    Inoltre ho aggiunti i tag CODE, da usare quando si posta del codice.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Non ti basta configurare il dns, devi anche configurare il tuo router per fare il routing della porta in cui metti il server in ascolto ed ovviamente configurare anche il firewall del tuo PC per accettare connessioni in ingresso su quella porta

  4. #4
    Grazie mille per la risposta!
    Scusa l'ignoranza, fare il routing di una porta significa attivarla/aprirla?
    Poi, un'altra domanda, il codice che ho postato è quello che ho utilizzato per la connessione in locale,con l'indirizzo privato sostituito con quello pubblico restituito dal servizio dns, ma il codice può rimanere invariato come ho fatto?
    Grazie ancora per la disponibilità.

  5. #5
    Quote Originariamente inviata da lumaca90 Visualizza il messaggio
    Grazie mille per la risposta!
    Scusa l'ignoranza, fare il routing di una porta significa attivarla/aprirla?
    Poi, un'altra domanda, il codice che ho postato è quello che ho utilizzato per la connessione in locale,con l'indirizzo privato sostituito con quello pubblico restituito dal servizio dns, ma il codice può rimanere invariato come ho fatto?
    Grazie ancora per la disponibilità.
    Per routing non si intende solo aprire la porta ma diciamo che devi dire al router che le connessioni in entrata su quella porta devono essere "girate" all'ip ( ovviamente ip della lan) su cui il tuo server sta girando. In allegato trovi per esempio la schermata del mio router in cui sono definite 2 regole ( connessione al mio ssh server).

    per quanto riguarda il codice non devi apportare nessuna modifica, ovviamente in fase di sviluppo ti consiglio di utilizzare direttamente l'ip locale in modo da non avere rallentamenti dovuti alla connessione ad internet
    Immagini allegate Immagini allegate

  6. #6
    Grazie mille,proverò a fare come hai detto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.