求一个 扫描一个指定ip并指定端口范围的c#程序

求一个 扫描一个指定ip并指定端口范围的c#程序,第1张

class PingExam

{

public static void Main()

{

Ping ping = new Ping();

string ip = "192168143"; // 目标ip

int[] ports = { 20, 21, 25, 80, 8080, 2588 }; // 需要扫描的端口

scanPort(IPAddressParse(ip), ports);

}

private static void scanPort(IPAddress address, int[] ports)

{

try {

int count = portsLength;

AutoResetEvent[] arEvents = new AutoResetEvent[count]; // 同步对象

for (int i = 0; i < count; i++) {

arEvents[i] = new AutoResetEvent(false); // 同步对象, 初始未触发

Socket socket = new Socket(AddressFamilyInterNetwork, SocketTypeStream, ProtocolTypeTcp);

socketBind(new IPEndPoint(IPAddressAny, 0));

socketBeginConnect(new IPEndPoint(address, ports[i]),

callback,

new ArrayList() { socket, ports[i], arEvents[i]} // 传递3个参数: 当前socket, 端口, 同步对象

);

}

WaitHandleWaitAll(arEvents); // 等待所有扫描工作完成

}

catch (Exception ex) {

ConsoleWriteLine(exMessage);

}

}

private static void callback(IAsyncResult ar) // 扫描完成后的回调方法

{

ArrayList list = (ArrayList)arAsyncState; // 获取传递的参数

Socket socket = (Socket)list[0];

int port = (int)list[1];

AutoResetEvent arevent = (AutoResetEvent)list[2];

if (arIsCompleted && socketConnected) {

ConsoleWriteLine("port: {0} open", port); // 检查 connected属性, 如果为true 则表示是开放的

}

else {

ConsoleWriteLine("port: {0} closed", port);

}

try {

socketShutdown(SocketShutdownBoth);

socketClose();

}

catch {

}

areventSet(); // 完成后触发

}

}

可以使用IP代理功能,方法如下:

1、打开浏览器,打开Internet属性,找到连接;

2、点击局域网设置;

3、勾选为LAN使用代理服务器;

4、可以直接填入代理地址和端口,也可以点击高级进行设置。

在设置-wifi-长按你要设静态IP的网络-修改网络-会出现密码更改窗(输入密码)-IP设置(DHCP改为静态)-就可以改IP地址了。

我是按我的安卓40 平板电脑一步一步 *** 作而写下的,绝对真实。

在一台机器里设有多个IP地址时,要ServerSocket只在特定的IP上侦听。1ServerSocket绑定一个特定IP,在一台机器里运行多个ServerSocket程序,PORT相同源码天空,IP不同。2ServerSocket绑定多个特定IP,当和CLIENT连接时,能够侦测出CLIENT连接ServerSocket哪个特定IP。----------------------------------------------------------------------------------------------------------------------------------------------------------------不会。IIS的虚拟主机不就可以。不同的IP。一样的PORT。--------------------------------------------------------------------------------我问了一下一个搞VC的,答案是用不着, 一台机器上的serversocket, 会监听本机上所有的IP地址,不用你自己来区分, client请求过来时会自动区分的,如果你想知道具体client连接的是哪个IP地址,可以用getHostbyname(可能是这个函数)获得自己具体的IP----------------------------------------------------------------------------------------------------------------------------------------------------------------Server 的地址不管它就行了----------------------------------------------------------------------------------------------------------------------------------------------------------------到其它有关ServerSocket的问题去看看即可--------------------------------------------------------------------------------可以吗?我要的是SERVER IP----------------------------------------------------------------------------------------------------------------------------------------------------------------to Another_eYes: 因为他的机器上有多个IP--------------------------------------------------------------------------------

以上就是关于求一个 扫描一个指定ip并指定端口范围的c#程序全部的内容,包括:求一个 扫描一个指定ip并指定端口范围的c#程序、怎样将自己的电脑的ip伪装成某指定的ip、安卓4.0怎么在程序里设置静态ip等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10173766.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存