日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

pcap_compile

發布時間:2023/12/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pcap_compile 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

pcap_compile()是用來把用戶輸入的過濾字符串編譯進過濾信息的,這個過濾信息可以決定哪些包是用戶可獲取到的 。

過濾表達式包含一個或多個元素。每個元素通常包含由多個或一個被修飾符修飾的id名稱或數字,有三種不同的修飾符:類型修飾符 說明id屬于那種類型。可以用的類型修飾符有host,net,port,portrange。例如‘host foo’, ‘net 128.3’, ‘port 20’, ‘por-trange 6000-6008’。如果id沒有指定類型,則host是默認。路徑方向修飾符 指定id的路徑方向。可以用的路徑修飾符有src, dst, src or dst,srcand dst, addr1, addr2, addr3, and addr4.舉例‘src foo’, ‘dst net 128.3’, ‘src or dst port ftp-data’.如果id沒有路徑修飾符,默認src or dst。addr1, addr2, addr3, and addr4僅用于無限網絡,在鏈路層,如果是混雜模式,可以用inbound,outbound來指定過濾方向協議修飾符 來限制匹配的協議。可以用的協議修飾符ether, fddi, tr, wlan, ip, ip6, arp, rarp, decnet, tcp and udp。舉例ether src foo’,‘arp net 128.3’, ‘tcp port 21’, ‘udp portrange 7000-7009’, ‘wlan addr2 0:2:3:4:5:6’. 如果沒有制定協議,則默認是所有協議都匹配,比如‘src foo’,ip arp rarp的協議都匹配fddi協議等同于ether協議,在語法解析器中,fddi與ether含義一樣,fddi頭部信息包含以太網源、目的地址,還包含包的類型,可以指定fddi頭部域的信息來過濾指定的域。fddi頭還包含其他的域,但是不能應用與過濾。tr和wlan在過濾解析器中,含義等同于ether。以前版本的fddi頭部信息也適用于802.11無線局域網的頭。

除了以上三種修飾符,還有一些特殊的修飾符和算術運算式:gateway, broadcast, less, greater。如下所示算術運算式:
and or not
可以用and、or、not來組合復雜的過濾表達式。比如‘host foo and not port ftp and not port ftp-data’,如果多個表達式以and、 or、 not來組合,多個表達式有相同的修飾符,則可以省略除第一個表達式以外,比如‘tcp dst port ftp or ftp-data or domain’等同于‘tcp dst port ftp or tcp dst port ftp-data or tcp dstport domain’

允許的過濾表達式:dst host host包的目的ip,可以是ip地址也可以是域名src host host包的源iphost host匹配包的源或則目的ip以上的表達式都可以用ip、arp、rarp、ip6,比如ip host host,包是ip協議,包的源ip或目的ip是host的,如果host是多播ip地址,那么每個地址都會匹配。ether dst ehost匹配以太網頭的目的地址ether src ehost匹配以太網頭的源地址ether host ehost匹配以太網源或目的地址gateway host匹配網關地址,以太網頭的目的或者源地址是網關但不能以ip頭的源或目的地址為網關,網關host必須存在于設備的域名解析文件中,不適用于ipv6dst net net匹配范圍內包的目的ip地址(一段范圍的ip地址),net可以是網絡文件中的名稱,也可以是一個網ip地址,一個ipv4的ip地址可以是以點分制的數字,如192.168.1.1則對應的網絡掩碼是255.255.255.255,192.168.1則對應的網絡掩碼是255.255.255.0,192.168則對應的網絡掩碼是254.254.0.0,ipv6的ip地址必須是完整的,所以ipv6的匹配等同于ip地址匹配src net net匹配范圍內包的源ip地址net net匹配范圍內包的源或者目的ip地址net net mask netmask匹配指定的ip地址net以及掩碼netmask,可以指定src或者dst。不支持ipv6net net/len匹配指定的ip地址,類似192.168.10.1/24 等同于 192.168.10.1 和掩碼254.254.254.0,可以指定src或dstdst port port匹配指定的包的目的端port,port可以是數字或者/etc/services 文件中的端口對應的名稱,如果使用名稱,則只匹 配名稱對應的端口和協議,如果是數字,則只匹配端口號src port port匹配包的指定源端口port port匹配源或在目的端口為port的包dst portrange port1-port2匹配目的端口在port1-port2之間的包src portrange port1-port2匹配源端口在port1-port2之間的包portrange port1-port2匹配源端口或目的端口在port1-port2之間的包以上關于端口和端口范圍匹配的表達式可以用tcp或udp來指定協議less length匹配長度小于指定的長度length的包greater length匹配長度大于指定長度length的包ip proto protocol匹配協議為protocol的ip包,protocol可以使一個數字也可以是字符串(icmp, icmp6, igmp, igrp, pim, ahesp, vrrp, udp, tcp),注意因為tcp udp icmp本身是修飾符所以可以前面ip6 proto protocol匹配協議為protocol的ipv6的包

總結

以上是生活随笔為你收集整理的pcap_compile的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。