class Program
{
private static string ServerName = "";
private static string UserName = "";
private static string Password = "";
private static string dbConnectionSring = "";
private static X509Certificate adminCertificate;
private static byte[] readBuffer = new byte[4096];
static void Main(string[] args)
{
Console.WriteLine("Please grant SQL Server access to the Admin Server:\n");
Console.Write("Server Name: ");
ServerName = Console.ReadLine();
Console.Write("\nUser Name: ");
UserName = Console.ReadLine();
Console.Write("\nPassword: ");
Password = PasswordMasker.Mask(Password);
dbConnectionSring = SQLServerAccess.CreateConnection(ServerName, UserName, Password);
adminCertificate = Certificate.GenerateOrImportCertificate("AdminCert.pfx", "randomPassword");
try
{
Console.WriteLine("Initializing server on the WildCard address on port 443...");
TcpListener listener = new TcpListener(IPAddress.Any, 443);
try
{
Console.WriteLine("Starting to listen at {0}: 443...", IPAddress.Any);
//the backlog is set to the maximum integer value, but the underlying network stack will reset this value to its internal maximum value
listener.Start(int.MaxValue);
Console.WriteLine("Listening... Waiting for a client to connect...");
int ConnectionCount = 0;
while (true)
{
try
{
listener.BeginAcceptTcpClient(new AsyncCallback(AcceptCallback), listener);
ConnectionCount++;
Console.WriteLine(
" Accepted connection #" + ConnectionCount.ToString());
}
catch (SocketException err)
{
Console.WriteLine("Accept failed: {0}", err.Message);
}
}
}
catch (Exception ex)
{
Console.WriteLine("Listening failed to start.");
listener.Stop();
Console.WriteLine(ex.Message);
}
}
catch (Exception ex)
{
Console.WriteLine("Initialiazing server Failed.");
Console.WriteLine(ex.Message);
}
}
我会非常感谢你的帮助!
>
我将程序中的端口更改为其他端口。
奏效了!
非常感谢:@DavidSchwartz、@Gusman
问题内容: 我正在尝试用python创建一个非常基本的服务器,该服务器侦听端口,在客户端尝试连接时创建TCP连接,接收数据,发回一些东西,然后再次侦听(并无限地重复该过程)。这是我到目前为止所拥有的: 有时,这似乎工作得很好(如果我将浏览器指向“ localhost:4444”,则服务器将打印出HTTP GET请求,而网页将显示文本“ hello world”)。但是当我在最后几分钟关闭服务器后尝
这就是我有点困惑的地方。 我在服务器端拿到的地址,有客户端连接的WiFi网络的公有地址(这是我预期的),还有一些端口号,基于我对NATs的理解,应该和客户端实际使用的端口号不一样,是用来翻译地址的。 但是,如果我在客户端上使用了getsockname()函数,则得到的端口号与服务器给出的端口号相同。
问题内容: 如何仅使用 proc 获得所有网络接口的(IPv4)地址?经过广泛的调查,我发现了以下内容: 使用,需要打开套接字并充分了解所有接口名称。在Linux上的任何手册页中也没有记录。 包含,但这是接口统计信息的列表。 包含,这正是我需要的,但需要IPv6。 通常,在中很容易找到接口,但是很少使用实际地址,除非在某些连接中有明确的一部分。 有一个名为的系统调用,这是Windows所期望的非常
注意:v2 API差异:现有.proto地址结构。 Pipe SocketAddress SocketAddress.Protocol (Enum) BindConfig Address CidrRange Pipe Pipe proto { "path": "..." } path (string, REQUIRED) Unix域套接字路径。 SocketAddress SocketAdd
我的第一篇文章,所以请温柔一点;)我必须修改一些现有的专注于java.net.网络接口的软件。以前所有的接口都列在一个组合框中,用户必须选择一个。现在不仅可以选择接口,还可以选择这个接口附带的一个特定的ip地址。由于许多代码都是基于网络接口类的,我在想是否有可能通过将现有网络接口拆分为ip地址来“创建”一些新的网络接口。这可能吗?我知道,我不能创建一个新的网络接口。但是也许还有另一个选择,我现在看
问题内容: 我想获取启动程序的计算机的IP地址,然后将其发送到客户端,但是我总是得到0.0.0.1而不是真实的IP地址(例如127.0.0.1)。 我目前可以获取端口,但无法获取IP地址。 我怎么才能得到它? 最好的解决方案是能够使用。这是我目前正在做的事情: 编辑: 我知道我的思维方式走错了路。所以我的问题是:获得自己的IP地址的最佳方法是什么? 问题答案: 当您将套接字设为0.0.0.0时,这