Multiaddr implementation in C#.
PM> Install-Package Multiformats.Address
dotnet add package Multiformats.Address
var ma = Multiaddress.Decode("/ip4/127.0.0.1/udp/1234");
var addresses = ma.Split();
var joined = Multiaddress.Join(addresses);
var tcp = ma.Protocols.Get<TCP>();
There's some extension methods included that let's you create multiaddresses of IPEndPoints, and create IPEndPoints from multiaddresses. Some let's you create sockets directly from IP4/IP6, TCP/UDP multiaddresses.
var socket = ma.CreateSocket();
var localEndPoint = socket.GetLocalMultiaddress();
var remoteEndPoint = socket.GetRemoteMultiaddress();
- DCCP
- DNS/4/6
- HTTP
- HTTPS
- IPv4
- IPv6
- IPFS (deprecated - use P2P)
- Onion
- P2P
- SCTP
- TCP
- UDP
- UDT
- Unix
- WebRTCDirect
- WebRTCStar
- WebSocket
- WebSocket Secure