Articles of tcpip

为什么TCP连接状态不能从CLOSE_WAIT变为CLOSED?

我有一个客户端服务器应用程序运行在:服务器:Windows Server 2008 R2 [标准]客户端:Windows XP SP3 工作stream:服务器在YY端口监听客户端连接。 客户端连接到端口YY的服务器。 数据从服务器传输到客户端。 服务器closures套接字(带重用选项,TF_REUSE_SOCKET)客户端closures套接字。 问题:在正常情况下,数据传输完成后服务器closures套接字,一切工作正常。 但在客户端首先closures套接字(取消数据传输)的情况下,套接字状态@服务器更改为CLOSED_WAIT(因为服务器从客户端接收FIN)。 在客户端,FIN_WAIT_2中的套接字状态。 这个套接字状态永远保持。 sockets没有释放。 如果服务器也是WindowsXP XP3,相同的应用程序工作正常。 是否有在Windows2008 R2中,使我的应用程序不释放套接字(或更改套接字状态从CLOSED_WAIT)的任何设置? 注意:我configuration了[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ Tcpip \ Parameters] TcpFinWait2Delay = 60但没用。

什么会导致我的SendMail服务器不确认接收TCP序列?

我的TCP / IP协议栈的知识有点生疏,所以请忍受我…. 我有一个CentOS 5.7服务器与SendMail,并看到间歇性超时问题发送电子邮件(特别是较大的电子邮件)到其他远程域。 所有附件或收件人域都不会发生这种情况。 一些。 经过一些扩展的故障排除后,我想我已经缩小到TCP序列没有被确认。 下面是我从我的MTA(fooMTA)上直接收集的数据包捕获的TCP会话细目: Packet 1 – 11: Standard TCP handshake followed by initial SMTP conversation. No errors. Packet #12 Recipient MTA: TCP sequence 231. Ack 91. Packet #13 FooMTA: TCP sequence 91. Ack 305. Packet #14 FooMTA: TCP sequence 1115. Ack 305. Packet #15 Recipient MTA: TCP sequence 305. […]

使用TCP / IP连接到MS SQL 2012

我试图在SQL Express 2012数据库上启用TCP / IP连接,似乎我错过了某个步骤。 为了启用它,我: 打开SQL Serverconfigurationpipe理器 select“[实例名称]的协议” 双击TCP / IP 将“ Enabled Yes设置为“ Yes 出于testing目的,将“ Listen All设置为“ Yes 此外,为了达到最佳效果,请连接到SQL Server Management Studio中的服务器(使用[默认]协议,而不是显式的TCP / IP),确保Allow remote connections to this server 。 然后为了testing它,我试图在SQL Server Management Studio中创build一个新的连接。 一样的用户,一切都一样。 唯一的区别是,在高级设置中,我将协议设置为TCP/IP 。 但是,它不连接。 只是在标准的“服务器没有find或无法访问”错误的结果。 我的目标是能够通过SQL Management Studio以及使用Hamachi的工作站的Visual Studio连接到服务器提供专用连接。 当然,工作站也会得到同样的错误,因为它似乎还没有在服务器本地工作。 还有什么我应该检查哪些可能会阻止连接? 在Windows服务器configuration和维护方面,我并不是很精通,所以很可能是我完全忽略的基本或显而易见的步骤。

到SQL Express的TCP / IP连接在WORKGROUP中的客户端的半双工上工作

到目前为止,我已经了解了有关Microsoft SQL Server Express(包括版本2012)以及早期版本(如2008R2和2008)以及大部分所有返回到SQL Server 2005的事实。我正在configurationSQL Server“工作组服务器“机器,也就是说,它是一个运行Windows Server操作系统的专用服务器机箱,但是它使用的是一个WORKGROUP,它只能运行Microsoft SQL Express。 请注意以下背景资料: configuration一个SQL Express实例在没有configurationTCP / IP的情况下出现。 打开TCP / IP选项(将TCP / IP的SQL Serverconfiguration程序协议列表项目从No更改为Yes)是不够的,有时您还必须select重新configurationStatic和Dynamic端口选项。 例如,对于单个实例,可以将静态端口设置为1433,将dynamic端口设置为空白(如果存在,则删除0)。 这是重复的,在一些具有IPV4和IPV6的Windows机器上,以及一个物理的和多个虚拟的以太网适配器上,这可能是4,8甚至16个必须设置静态和dynamic端口的地方。 或者,您可以configurationSQL浏览器并启用它,这通常有助于解决复杂的TCP / IP连接问题,但通常不会。 在域中,我很less有奇怪的问题,所以这个问题不是基于域的SQL服务器部署,而是工作组部署。 不,我没有select在工作组上运行我的办公室,但是我的许多客户/客户都select了这个选项,我应该在工作组上支持SQL Express。 以上所有内容都是背景知识,下面的部分就是我的实际问题: 在没有域的小型办公networking中,许多WORKGROUP客户端系统似乎都有通过TCP / IP连接的奇怪问题,甚至只是自动协商到SQL Server数据库的连接,我无法在自己的办公室或家庭networking,SQL连接将无法运行,即使SQL浏览器正在运行,SQL静态和dynamic端口选项已configuration,防火墙已被closures,并且ping工作正常,但使用SQL客户端的TCP / IP连接在Windows 7 MDAC组件中运行,是不可能的。 请注意,它不像安装SQL Native Client v10或SQL本机Client V11那么简单。 这些客户端的唯一解决方法是使用CLICONFG.EXE禁用TCP / IP,并通过在服务器名称前添加“NP:”来禁用SQL数据库连接string中的自动协商。 有关此客户端的工作组局域网的基本上是不兼容的,即使是在侦听TCP端口1433的静态单个SQL Server实例,也没有SQL浏览器或dynamic端口。 这些相同的客户端通常有12台机器,12台机器中的6台不能通过自动(不强制命名pipe道)连接string进行连接,只能在连接types被强制命名为pipe道时才能连接。 强制命名pipe道的典型连接string可能会在主机和实例的前面放置“NP:”,如下所示:“NP:HOSTNAME \ SQLEXPRESS”,另外我们会去该客户机的CLICONFG.EXE并禁用TCP / IP。 这两个步骤在一些工作组情况下似乎是必需的 […]

Windows Server 2012中缺lessTcpTimedWaitDelay

突然我的服务器日志显示: 由于系统缺less足够的缓冲空间或队列已满,因此无法执行套接字操作 我GOOGLE了,发现这些链接作为解决这个问题的build议: https://superuser.com/questions/842585/getting-system-lacked-sufficient-buffer-space-or-because-a-queue-was-full 在服务器访问互联网时,得到“在套接字上的操作不能执行,因为系统缺乏足够的…” 他们说,你可以改变registry中的TcpTimedWaitDelay的值,问题可能会消失。 但是,我无法在Windows Server 2012上find这个值。我只是可以添加它。 但是我不确定它是否真的有用,因为我真的不知道如何测量这个关键的结果。 我该怎么办? 我应该将该密钥添加到registry中吗?

Terminal命令在Apache服务器(CentOS)的端口上查找允许的最大TCP / IP连接

是否有任何terminal命令检查允许与Apache服务器的最大允许的并发TCP / IP连接数量与CentOS?

如何在Windows Vista中启用TCP / IP转发

和XP一样吗? http://support.microsoft.com/?id=315236

vmware桥接networking接口,仅可用于来宾系统(Windows主机)

我想使networking接口只能用于VMware客户系统,而不能用于主机系统(networking被认为是不安全的,可能对主机有危险)。 在Linux下这很简单,在使用'ifconfig eth1'之后,接口没有ip-address(这使得主机系统无法通过eth1访问),但是可以通过guest系统进行configuration。 我的问题是如何在Windows XP下做一些与主机系统类似的东西。 networking接口只有在激活的情况下才起作用,而networkinggui强迫我使用dhcp或configurationip-address。 我不想做。 使用vmware-version:vmware workstation 6.5

dynamicIP的静态IP

我有一个dynamic的IP地址。 我想有一个静态的IP,但维珍传媒不允许静态的IP为住宅宽带服务,即使你问他们真的很好,并提出支付,而无需转换为商业资费。 我已经注册了由我的路由器更新的dynamicDNS服务,例如me.example.com将始终parsing为我的dynamicIP。 这在某些情况下是可以的,但是如果只能将IP地址input到configuration文件/硬件等,例如防火墙,颠覆服务等,则不是。 有没有办法让我的静态IP地址“转发”到我的dynamicIP? 一个可能的解决scheme涉及隧道? 设置一个私人代理? 请注意以下事项: 我可以从我的虚拟主机购买IP地址。 我有权访问networking服务器,并且能够创build自定义的DNS区域。 如果有必要,我也很乐意在家里运行一个networking服务器。 我不想改变宽带提供商。 我已经意识到虚拟机的“粘性IP”,我现在正在利用离开调制解调器的时间 我对需要inputIP地址的服务没有任何控制,所以我无法解决问题(我需要访问的服务正在工作)。 PS我试着用googlesearch这个问题,但search很困难,因为大部分的结果都与dynamic的dns有关(我已经设置好了,而且还不是我所追求的)

我的ISP IP范围内的用户听不到我的广播stream,但其他人可以听到我的广播stream

我正在通过Shoutcast服务器从我办公室的个人电脑上收听广播,而来自世界各地的人们可以通过浏览器或wmedialayer / winamp听到这个消息,但是来自ISP(包括我在使用外部IP的时候)一个stream不能打开浏览器或winamp / wmediaplayer。 我该怎么办?