我在Domain
命名空间中使用System.DirectoryServices.ActiveDirectory
对象。每当我使用Domain.GetCurrentDomain
或Domain.GetDomain
查询域详细信息时,它都会与域控制器建立连接。可以使用netstat -ano|findstr 389
命令查看此连接。
代码:
Domain dom = Domain.GetCurrentDomain();
我的问题是,如何关闭连接?我可以关闭连接的唯一方法是处置Domain
对象。由于我在代码中缓存了Domain
对象,所以我不想将其丢弃。它引发的问题是,'ESTABLISHED'状态在一段时间后仍会变为'CLOSE_WAIT'。
netstat -ano | findstr 389
TCP 10.241.93.168:51291 154.1.124.156:389 CLOSE_WAIT 8028
TCP 10.241.93.168:51297 154.1.124.154:389 CLOSE_WAIT 8028
TCP 10.241.93.168:51302 154.1.124.158:389 CLOSE_WAIT 8028
TCP 10.241.93.168:51320 154.1.124.155:389 CLOSE_WAIT 8028
TCP 10.241.93.168:51323 154.1.124.153:389 CLOSE_WAIT 8028
TCP 10.241.93.168:51332 154.1.124.157:389 CLOSE_WAIT 8028
TCP 10.241.93.168:53399 148.86.153.162:389 CLOSE_WAIT 8028
TCP 10.241.93.168:53436 139.172.150.15:389 CLOSE_WAIT 8028
出于安全原因,我需要消除这种陈旧的连接。如果您有任何建议,请告诉我。
谢谢,Santhosh
答案 0 :(得分:1)
我敢打赌,Domain
对象保持连接打开,因为您可以对它执行操作。
如果您只是需要获取一些域信息,您应该阅读它并将其存储在一个简单的类中,然后处理Domain
。