Atc.Network
2.0.0
dotnet add package Atc.Network --version 2.0.0
NuGet\Install-Package Atc.Network -Version 2.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Atc.Network" Version="2.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Atc.Network" Version="2.0.0" />
<PackageReference Include="Atc.Network" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Atc.Network --version 2.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Atc.Network, 2.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Atc.Network@2.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Atc.Network&version=2.0.0
#tool nuget:?package=Atc.Network&version=2.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
๐ Atc.Network
A .NET 10 library for network communication, scanning, and remote desktop โ batteries included.
๐ค Why Atc.Network?
| ๐ TCP & UDP | Event-driven clients and servers with auto-reconnect, keep-alive, optional TLS, and configurable timeouts |
| ๐ฅ๏ธ VNC Client | Cross-platform RFB protocol client โ Raw, CopyRect, RRE, CoRRE, Hextile, ZRLE encodings |
| ๐ IP Scanning | Scan ranges or CIDR blocks with ICMP ping, hostname/NetBIOS/MAC resolution, vendor lookup, and port scanning |
| โฐ Wake-on-LAN | Wake sleeping devices with a magic packet, by broadcast or to a chosen subnet |
| ๐ฐ๏ธ NTP Time | Get the time from an NTP server, with the local clock's offset and the round-trip delay |
| ๐น ONVIF Cameras | Find IP cameras, and read their model and RTSP stream URLs |
| ๐ก Service Discovery | Find printers, cameras, speakers, TVs and other devices with mDNS / DNS-SD, SSDP (UPnP) and ONVIF WS-Discovery |
| ๐งฉ Interface-first | Every component has an I* interface โ built for DI and unit testing |
| ๐ Structured Logging | [LoggerMessage] source generators throughout โ zero-allocation, high-performance logging |
| ๐ง Cross-platform | Windows, Linux, macOS โ no System.Drawing, no P/Invoke, no WinForms |
๐ฆ Installation
dotnet add package Atc.Network
โก See It In Action
๐ TCP Client
var tcpClient = new TcpClient(logger, "myserver.example.com", 4242);
tcpClient.DataReceived += data => Console.WriteLine($"๐ฅ {Encoding.ASCII.GetString(data)}");
if (await tcpClient.Connect())
{
await tcpClient.Send("Hello!");
}
๐ฅ๏ธ VNC Remote Desktop
var vnc = new VncClient("192.168.1.50", 5900);
vnc.FramebufferUpdated += (_, e) => RenderRegion(e.Rectangle, e.Framebuffer);
await vnc.Connect();
await vnc.Authenticate("my-password");
await vnc.Initialize();
await vnc.StartUpdates();
๐ IP Range Scan
var scanner = new IPScanner(new IPScannerConfig
{
IcmpPing = true,
ResolveHostName = true,
ResolveMacAddress = true,
ResolveVendorFromMacAddress = true,
});
var results = await scanner.ScanRange(
IPAddress.Parse("192.168.0.1"),
IPAddress.Parse("192.168.0.254"),
CancellationToken.None);
๐ Documentation
| Topic | Description |
|---|---|
| ๐ TCP Client & Server | Connections, TLS, reconnection, keep-alive, events |
| ๐ก UDP Client & Server | Datagram communication, hosted server |
| ๐ฅ๏ธ VNC Client | Remote desktop, encodings, pixel data, input forwarding |
| ๐ IP Scanning & Helpers | IP scanner, port scan, ping, traceroute, DNS, NetBIOS, ARP, MAC vendor lookup |
| โฐ Wake-on-LAN | Magic packets, subnet broadcast, SecureOn password |
| ๐ฐ๏ธ NTP Time | Server time, clock offset, round-trip delay, time zones |
| ๐น ONVIF Cameras | Find cameras, read model and stream URLs, credentials, errors |
| ๐ก Service Discovery | mDNS / DNS-SD, SSDP (UPnP) and ONVIF WS-Discovery, in the IP scanner too |
| ๐งต Events, Threads & Errors | Which thread raises events, handler exceptions, log event ids |
| ๐ Metrics & Tracing | OpenTelemetry metrics and traces: instruments, tags, spans |
| ๐งช Showcase with Aspire | TCP and UDP test servers and clients, with logs and metrics in the Aspire dashboard |
๐ง Requirements
- .NET 10.0+
- NuGet dependencies, pulled in automatically:
- Atc: ATC base library
- Microsoft.Extensions.Hosting.Abstractions:
IHostedServiceforTcpServerandUdpServer - Microsoft.Extensions.Logging.Abstractions:
ILogger
๐ค How to contribute
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Atc (>= 4.1.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.14)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.14)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Atc.Network:
| Package | Downloads |
|---|---|
|
Atc.Wpf.Network
WPF network controls library providing network scanning and discovery components. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0 | 46 | 11/12/2026 |
| 1.0.236 | 819 | 3/13/2026 |
| 1.0.235 | 373 | 1/3/2026 |
| 1.0.233 | 607 | 5/26/2025 |
| 1.0.224 | 1,095 | 4/12/2024 |
| 1.0.213 | 697 | 2/15/2024 |
| 1.0.209 | 479 | 2/14/2024 |
| 1.0.207 | 425 | 2/14/2024 |
| 1.0.199 | 609 | 1/26/2024 |
| 1.0.193 | 544 | 12/4/2023 |
| 1.0.187 | 480 | 11/23/2023 |
| 1.0.183 | 872 | 10/3/2023 |
| 1.0.176 | 744 | 8/25/2023 |
| 1.0.174 | 499 | 8/25/2023 |
| 1.0.169 | 781 | 7/5/2023 |
| 1.0.163 | 630 | 6/12/2023 |
| 1.0.156 | 579 | 5/26/2023 |
| 1.0.152 | 651 | 4/17/2023 |
| 1.0.144 | 659 | 4/4/2023 |
| 1.0.142 | 702 | 3/13/2023 |
Loading failed