本文实例讲述了Go语言实现的简单网络端口扫描方法。分享给大家供大家参考。具体实现方法如下:
复制代码 代码如下:package main
import (
"net"
"fmt"
"os"
"runtime"
"time"
"strconv"
)
func loop(startport, endport int, inport chan int) {
for i := startport; i <= endport; i++{
inport <- i
}
}
func scanner(inport, outport, out chan int, ip net.IP, endport int){
for{
in := <- inport
//fmt.Println(in)
tcpaddr := &net.TCPAddr{ip,in}
conn, err := net.DialTCP("tcp", nil, tcpaddr)
if err != nil {
outport <- 0
}else{
outport <- in
}
conn.Close()
if in == endport{
out <- in
}
}
}
func main() {
starttime := time.Now().Unix()
runtime.GOMAXPROCS(4)
inport := make(chan int)
outport := make(chan int)
out := make(chan int)
collect := []int{}
if len(os.Args) != 4 {
fmt.Println("Usage: scanner.exe IP startport endport")
fmt.Println("Endport must be larger than startport")
os.Exit(0)
}
ip := net.ParseIP(os.Args[1])
if(os.Args[3] < os.Args[2]) {
fmt.Println("Usage: scanner IP startport endport")
fmt.Println("Endport must be larger than startport")
os.Exit(0)
}
startport, _:= strconv.Atoi(os.Args[2])
endport, _ := strconv.Atoi(os.Args[3])
go loop(startport, endport, inport)
for{
select {
case <-out:
fmt.Println(collect)
endtime := time.Now().Unix()
fmt.Println("The scan process has spent ",endtime-starttime,"second")
os.Exit(0)
default:
go scanner(inport, outport, out, ip, endport)
port := <- outport
if port != 0{
collect = append(collect, port)
}
}
}
}
希望本文所述对大家的Go语言程序设计有所帮助。
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新日志
- 黑帝斯哈迪斯2姊妹双刃图鉴及附魔效果一览 黑帝斯哈迪斯2全武器图文介绍
- 刘文正.2013-金典歌展2CD【南方】【WAV+CUE】
- 刘珺儿.2001-标准心上人【P.TMUSIC】【WAV+CUE】
- WBG入选沙特电竞世界杯!角逐多个电竞项目
- 《小谢尔顿》最终季大结局首曝片段 成年谢米回归!
- 鸣潮凌阳声骸怎么选择 凌阳声骸搭配及词条选择攻略
- 鸣潮莫特斐声骸怎么选择 莫特斐声骸搭配及词条选择攻略
- 黑帝斯哈迪斯2月石之斧图鉴及附魔效果一览 哈迪斯斧头介绍及祝福推荐
- 甲子慧.2015-最爱【乾坤唱片】【WAV+CUE】
- 甲子慧.2007-红线情【乾坤唱片】【WAV+CUE】
- 周翠玲.2010-JZ8爵士八号【久乐实业】【WAV+CUE】
- 《家园3》公布最新预告片 高级版玩家已可抢先体验!
- 《地狱之刃2》预告对比:精心打磨三年 画质显著提升
- 《生化危机4:重制版》路径光追Mod:帧数遭暴降 画面大提升
- 群星《青春重置计划 4 珍稀》[FLAC/分轨][1018.4MB]