Ci sono tre sovraccarichi per la costruzione di un TcpListener
:TcpListener: come ascoltare sulla porta specifica su tutte le interfacce?
public TcpListener(int port);
(obsoleto)public TcpListener(IPEndPoint localEP)
public TcpListener(IPAddress localaddr, int port)
i voglio per l'ascolto su una determinata porta, ma su all availa interfacce Lì era un sovraccarico disponibile per farlo, ma è stato contrassegnato come obsolete
.
Qual è il nuovo modo preferito/non obsoleto per ascoltare su una particolare porta su tutte le interfacce con un TcpListener
in .NET?
Per l'amor disponibilità, un IPEndPoint
è:
public IPEndPoint(
IPAddress address,
int port
)
che è ciò che il 3 ° di sovraccarico è. E un IPAddress
prende, come il suo costruttore:
- un
byte[]
- un
Int64
- un
byte[]
e unInt64
Gesù; è peggio di quanto pensassi.Devi enumerare tutte le interfacce e dire manualmente che vuoi associarle tutte. –
su linux con Mono è sufficiente collegarsi a Any perché quello è "effettivamente 0.0.0.0" e significa "tutte le interfacce" ... – Yahia
Beh, significa "tutte le interfacce IPv4", comunque. –