C# 无法使用DNS服务器进行连接
以前我在使用DNS服务器连接客户端和服务器时遇到问题,因为我无法解决ip问题C# 无法使用DNS服务器进行连接,c#,dns,ip,resolve,C#,Dns,Ip,Resolve,以前我在使用DNS服务器连接客户端和服务器时遇到问题,因为我无法解决ip问题 public static TcpClient client; private const int _PORT = 100; // same as server port public static string connectTo = "kamikazehc.ddns.net"; public static IPAddress ipaddress = null; 将I
public static TcpClient client;
private const int _PORT = 100; // same as server port
public static string connectTo = "kamikazehc.ddns.net";
public static IPAddress ipaddress = null;
将IP地址解析为DNS名称:
如果我把我的本地Ip地址设置为192.168.x.x,我就会连接。
但是如果我使用我的固定IP或dns,客户端会不断尝试连接
使用DNS或固定IP
使用本地IP:
我想知道如何解决这个问题以便能够连接,我想我不需要修改代码,只需配置我的internet,但我不知道如何配置事实上,这看起来像是一个网络配置问题。防火墙中的端口100是否打开,端口转发是否正确配置?当您临时关闭防火墙时会发生什么情况?同时配置路由器将端口100转发到本地机器。我的调制解调器是摩托罗拉的,摩托罗拉没有打开端口的选项。
private static void ConnectToServer()
{
int attempts = 0;
bool IsValidIP = IPAddress.TryParse(connectTo, out ipaddress);
if (IsValidIP == false)
{
ipaddress = Dns.GetHostAddresses(connectTo)[0];
Console.WriteLine(Dns.GetHostAddresses(connectTo)[0]);
}
client = new TcpClient();
while (!_clientSocket.Connected)
{
try
{
attempts++;
Console.WriteLine("Connection attempt " + attempts);
_clientSocket.Connect(ipaddress, _PORT);
Thread.Sleep(100);
}
catch (SocketException)
{
Console.Clear();
}
}
Console.Clear();
Console.WriteLine("Connected");
}