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等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)