浏览代码

指定AddressFamily

陈国伟 3 年之前
父节点
当前提交
de5016a23f

+ 1 - 1
FastGithub.DomainResolve/DnsClient.cs

@@ -274,7 +274,7 @@ namespace FastGithub.DomainResolve
         {
             try
             {
-                using var socket = new Socket(SocketType.Stream, ProtocolType.Tcp);
+                using var socket = new Socket(address.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
                 await socket.ConnectAsync(address, port, cancellationToken);
                 return address;
             }

+ 1 - 1
FastGithub.DomainResolve/IPAddressElapsed.cs

@@ -50,7 +50,7 @@ namespace FastGithub.DomainResolve
             {
                 using var timeoutTokenSource = new CancellationTokenSource(maxConnectTimeout);
                 using var linkedTokenSource = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken, timeoutTokenSource.Token);
-                using var socket = new Socket(SocketType.Stream, ProtocolType.Tcp);
+                using var socket = new Socket(address.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
                 await socket.ConnectAsync(address, port, linkedTokenSource.Token);
                 return new IPAddressElapsed(address, stopWatch.Elapsed);
             }

+ 3 - 3
FastGithub.Http/HttpClientHandler.cs

@@ -128,7 +128,7 @@ namespace FastGithub.Http
         /// <returns></returns>
         private async ValueTask<Stream> ConnectAsync(SocketsHttpConnectionContext context, IPEndPoint ipEndPoint, CancellationToken cancellationToken)
         {
-            var socket = new Socket(SocketType.Stream, ProtocolType.Tcp);
+            var socket = new Socket(ipEndPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
             await socket.ConnectAsync(ipEndPoint, cancellationToken);
             var stream = new NetworkStream(socket, ownsSocket: true);
 
@@ -181,11 +181,11 @@ namespace FastGithub.Http
             }
             else
             {
-                if(IPAddress.TryParse(this.domainConfig.IPAddress, out address))
+                if (IPAddress.TryParse(this.domainConfig.IPAddress, out address))
                 {
                     yield return new IPEndPoint(address, dnsEndPoint.Port);
                 }
-                 
+
                 await foreach (var item in this.domainResolver.ResolveAllAsync(dnsEndPoint, cancellationToken))
                 {
                     yield return new IPEndPoint(item, dnsEndPoint.Port);

+ 1 - 1
FastGithub.HttpServer/SshReverseProxyHandler.cs

@@ -32,7 +32,7 @@ namespace FastGithub.HttpServer
         public override async Task OnConnectedAsync(ConnectionContext context)
         {
             var address = await this.domainResolver.ResolveAnyAsync(this.sshOverHttpsEndPoint);
-            using var socket = new Socket(SocketType.Stream, ProtocolType.Tcp);
+            using var socket = new Socket(address.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
             await socket.ConnectAsync(address, this.sshOverHttpsEndPoint.Port);
             var targetStream = new NetworkStream(socket, ownsSocket: false);