golang gopacket网络抓包和分析

在WINDOWS下手动设置路由主要在CMD命令符下(在运行输入栏中键入COMMAND或者CMD即可)进行。

键入命令ROUTE回车就是显示帮助说明,主要解说在WINDOWS系统中如何添加、删除、修改路由。

ROUTE命令格式如下:

ROUTE [-f] [-p] [command [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface]
其中:

–f 参数用于清除路由表,-p参数用于永久保留某条路由(即在系统重启时不会丢失路由,但在WINDOWS95下无效);

Command主要有PRINT(打印)、ADD(添加)、DELETE(删除)、CHANGE(修改)共4个命令;

Destination代表所要达到的目标IP地址;

MASK是子网掩码的关键字,Netmask代表具体的子网掩码,如果不加说明,默认是255.255.255.255(单机IP地址),因此键入掩码时候要特别小心,要确认添加的是某个IP地址还是IP网段。如果代表全部出口子网掩码可用0.0.0.0;

Gateway代表出口网关;

其他interface和metric分别代表特殊路由的接口数目和到达目标地址的代价,一般可不予理会。
 

举例1——环境中的使用

PC1的IP地址为192.168.97.1,路由器1(用于上互联网)的局域口IP地址为192.168.97.10,路由器2(用于上办公网)的局域口IP地址为192.168.97.11。

如果PC1同时想访问互联网和办公网,通常情况是在WINDOWS网络属性反复修改默认网关,每次还只能访问1个网段,既不方便也非常麻烦。为解决这个问题可在DOS命令符下键入如下命令:

route add 0.0.0.0 maks 0.0.0.0 192.168.97.10(用于上互联网)、

route add 10.42.29.0 mask 255.255.255.0 192.168.97.11(用于上办公网)。

这样将互联网作为默认路由,办公网用作特殊路由添加,当然,如果还有其他系统,可采用同样路由添加。

为了确保路由正确、避免引起路由混乱,最好先删除路由,再添加路由。比如上面的命令可改为:

在WINDOWS下手动设置路由主要在CMD命令符下(在运行输入栏中键入COMMAND或者CMD即可)进行。

键入命令ROUTE回车就是显示帮助说明,主要解说在WINDOWS系统中如何添加、删除、修改路由。
fmt.Println("packet start...")

deviceName := "eth0"
snapLen := int32(65535)
port := uint16(3306)
filter := getFilter(port)
fmt.Printf("device:%v, snapLen:%v, port:%v\n", deviceName, snapLen, port)
fmt.Println("filter:", filter)

//打开网络接口,抓取在线数据
handle, err := pcap.OpenLive(www.dfgj157.com deviceName, snapLen, true, pcap.BlockForever)
if err != nil {
fmt.Printf(www.dfgjpt.com"pcap open www.089188.cn/ live failed: %v", err)
return
}

// 设置过滤器
if err := handle.SetBPFFilter(filter); err != nil {
fmt.Printf("set bpf filter failed: %v", err)
return
}
defer handle.Close()

// 抓包
packetSource := gopacket.NewPacketSource(handle, handle.LinkType())
packetSource.NoCopy = true
for packet := range packetSource.Packets() {
if packet.NetworkLayer(www.tianzunyule178.com) == nil || packet.TransportLayer() == nil || packet.TransportLayer().LayerType() != layers.LayerTypeTCP {
fmt.Println("unexpected packet")


–f 参数用于清除路由表,-p参数用于永久保留某条路由(即在系统重启时不会丢失路由,但在WINDOWS95下无效);

Command主要有PRINT(打印)、ADD(添加)、DELETE(删除)、CHANGE(修改)共4个命令;

Destination代表所要达到的目标IP地址;

MASK是子网掩码的关键字,Netmask代表具体的子网掩码,如果不加说明,默认是255.255.255.255(单机IP地址),因此键入掩码时候要特别小心,要确认添加的是某个IP地址还是IP网段。如果代表全部出口子网掩码可用0.0.0.0;

Gateway代表出口网关;

其他interface和metric分别代表特殊路由的接口数目和到达目标地址的代价,一般可不予理会。
 

举例1——环境中的使用

PC1的IP地址为192.168.97.1,路由器1(用于上互联网)的局域口IP地址为192.168.97.10,路由器2(用于上办公网)的局域口IP地址为192.168.97.11。

如果PC1同时想访问互联网和办公网,通常情况是在WINDOWS网络属性反复修改默认网关,每次还只能访问1个网段,既不方便也非常麻烦。为解决这个问题可在DOS命令符下键入如下命令:

route add 0.0.0.0 maks 0.0.0.0 192.168.97.10(用于上互联网)、

route add 10.42.29.0 mask 255.255.255.0 192.168.97.11(用于上办公网)。

这样将互联网作为默认路由,办公网用作特殊路由添加,当然,如果还有其他系统,可采用同样路由添加。

为了确保路由正确、避免引起路由混乱,最好先删除路由,再添加路由。比如上面的命令可改为:

route delelte 0.0.0.0

route add 0.0.0.0 maks 0.0.0.0 192.168.97.10

route add 10.42.29.0 mask 255.255.255.0 192.168.97.11。

为了确保路由设置长久生效,可将上述命令加入AUTOEXEC.BAT文件中,即操作系统一启动就自动设置路由。当然也可在第一次添加路由时加入-P参数。

具体如下:

route –p add 0.0.0.0 maks 0.0.0.0 192.168.97.10

route –p add 10.42.29.0 mask 255.255.255.0 192.168.97.11。

这时用route print查看路由,就可以看到有两条永久路由添加到路由表中了

 

举例2——双网卡指定网关

打开命令行cmd,输入route print,显示Default Gateway:192.168.1.1。找到原因就好办了,输入route -p change 0.0.0.0 mask 0.0.0.0 192.168.16.1。再测试仪一下,内外皆通。


route delelte 0.0.0.0

route add 0.0.0.0 maks 0.0.0.0 192.168.97.10

route add 10.42.29.0 mask 255.255.255.0 192.168.97.11。

为了确保路由设置长久生效,可将上述命令加入AUTOEXEC.BAT文件中,即操作系统一启动就自动设置路由。当然也可在第一次添加路由时加入-P参数。

具体如下:

route –p add 0.0.0.0 maks 0.0.0.0 192.168.97.10

route –p add 10.42.29.0 mask 255.255.255.0 192.168.97.11。

这时用route print查看路由,就可以看到有两条永久路由添加到路由表中了

 

举例2——双网卡指定网关

打开命令行cmd,输入route print,显示Default Gateway:192.168.1.1。找到原因就好办了,输入route -p change 0.0.0.0 mask 0.0.0.0 192.168.16.1。再测试仪一下,内外皆通。

解释一下命令的意思,-p 表示这个改变是persistent(永久),change表示改变参数,0.0.0.0 表对所有地址,mask 0.0.0.0 表网络掩码,192.168.16.1是上外网的网关。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值