C# webapi

di il
2 risposte

C# webapi

Buonasera a tutti, premetto che questo è il mio primo post in questo forum, mi presento mi chiamo Gerardo.

Vengo al punto.

Il software a cui sto lavorando è un software diciamo di "produzione", è il classico gestionale multi-client con un database Sql Server installato o su un server locale del cliente oppure su uno dei PC client che a quel punto funge da server.

Il sistema dispone anche di una parte WebServices API che gira su IIS opportunamente configurato che permette l'interconnessione e lo scambio dati con App e portali web Blazor che fanno sempre parte della piattaforma software che sviluppo.

E qui viene la mia domanda: al momento l'unico modo per far si che il cliente si connetta alla sua azienda è che disponga di un ip pubblico e una porta aperta sul suo router nattata sulla porta del server su cui è abilitato il webservice.

C'è un modo per far si che il cliente non debba necessariamente aprire una porta sul router e disporre di un ip pubblico?

Questo perchè molti clienti a volte hanno banalissime connessini adsl sperdute in paesini e non hanno alcuna competenza tecnica per aprire porte o richiedere ip pubblici al provider internet.

Ho visto che ad esempio PowerBI di Microsoft installa una sorta di Gateway il quale permette la connessione dei report realizzati sul loro cloud alla fonte dati SQL installata sul PC dove viene installato il gateway.

E' un dilemma che mi porto avanti da anni ma non ho mai trovato risposte nè tutorial.

Grazie a chi vorrà darmi dei consigli.

2 Risposte

  • Re: C# webapi

    Risposta corta:

    NO

    Risposta lunga: SENZA un IP pubblico, tu NON PUOI ACCEDERE ad un IP di una rete locale

    Una volta che hai un IP pubblico, ci sono diverse soluzioni alternative. Ad esempio l'utilizzo di una VPN (Virtual Private Network).

    Poi ci sono cose ancora piu' strane: il tuo server si collega, mediante un opportuno software, ad un server remoto che fa da IP pubblico e da PONTE tra lui e la tua macchina locale. Ad esempio 

    https://localxpose.io/

    (o servizi simili) 
    MA devi pagare ;-)

    OPPURE ti appoggi ad un PC sul Cloud (Microsoft Azure, Google Coud Platform, ...)
    Ma COMUNQUE ti serve l'IP pubblico!

    Attento: l'IP pubblico CAMBIA NEL TEMPO, quindi NON TI BASTA avere un IP, 
    ti serve anche un servizio DNS che mantiene il NOME costante ma che viene aggiornato con l'IP ogni tot minuti/ore. 

    Cosi, anche se l'IP cambia, non te ne accorgi.

    ---

    DIciamo che se ti affidi ad un professionista, il tizio e' in grado di fornirti le soluzioni in base alle TUE SPECIFICHE neccessita'.

    Ho visto che ad esempio PowerBI di Microsoft installa una sorta di Gateway il quale permette la connessione dei report realizzati sul loro cloud alla fonte dati SQL installata sul PC dove viene installato il gateway.

    E' il gateway, lato CLIENT, che si CONNETTE al server su Azure e gli spara i dati.
    NON E' il server su Azure che richiede i dati al client. Questo  NON E' POSSIBILE.
    e PowerBI (almeno quello che conosco io) gira SUL CLIENT, NON sul server!
    Quindi puo' tranquillamente comandare il gateway, visto che si trova sulla stessa macchina o comunque sulla rete locale.

  • Re: C# webapi

    Praticamente la soluzione migliore è installare una VPN

Devi accedere o registrarti per scrivere nel forum
2 risposte