IPMAN[DOS命令行程式]

IPMAN[DOS命令行程式]
更多義項 ▼ 收起列表 ▲

IPMan運行於Win95環境下的DOS命令行程式。主要功能是對乙太網卡的直接讀寫。它是通過vpacket.vxd來完成上述工作的。vpacket.vxd可以在如下的地址下載: 也可以使用隨本程式附帶的vapcket.vxd。vpacket.vxd是不需要安裝的。因此,IPMan也不需安裝。編譯IPMan需要VC4.0或更高的版本。

功能

1.查詢本機的乙太網地址。

2.查詢子網上任何機器的乙太網址。

3.查詢乙太網址對應的IP位址。(未測試)

4.監聽子網上流過的乙太網包。

5.傳送ARP報文。

6.建立TCP連線,傳送接收TCP報文。

利用最後兩個功能,可以偽裝成子網上的任何一台機器。當然,我只對偽裝成受信主機感興趣。

檔案

IPMan.c 原始碼

IP.h 各種包頭定義

IPMan.exe 可直接運行。只要當前目錄下存在

vpacket.vxd

IPMan.ini IPMan運行所需的初始參數。

vpacket.vxd

vpacket.exe vpacket.vxd編程環境。自解壓文

件。使用方法見展開後的vpacket.doc 檔案(Word97)。

README

初始參數

IPMan運行所需的初始參數都存放在檔案IPMan.ini中。在IPMan運行前,有兩個參數是必須重新設定的:本機的IP位址和NDIS設備名。有關NDIS NDIS設備名一般是0000、0001等等。在Win95註冊表的如下位置:KEY_LOCAL_MACHINE/System/CurrentControlSet/control/net/0000 ,IPMan.ini的格式類似於其它Windows套用的INI檔案。有一點要注意的是,兩個定義的段中間必需用一個空行分隔。由"#"開始的行是注釋行。以下是一個IPMan.ini樣板。

"//"後是作者加入的注釋,真正的檔案中是沒有的。

--------------cut here--------------

#Every segment should be seperated by blank

line #My IP address

[IpAddr] // 本機的IP位址

xxx.xxx.xxx.1 #NDIS driver name

[NDIS] // NDIS設備名

0000 #Max data length

[MaxDataLen] // 輸出時最多輸出的位元組數,詳見

輸出一節

4096 #IP table to query

[QueryIP] // IP位址列表,表示想要監聽主機的

IP位址 xxx.xxx.xxx.2

xxx.xxx.xxx.3

#Port table to query // 連線埠列表,表示想要監

聽主機的連線埠(TCP/UDP)

[QueryPort]

21 23 80 #Time out // 逾時(未提供)

[TimeOut] 12345

參數

無參數 顯示本機乙太網址 [-?] 顯示幫助信息

[-l[ini] [-ip:sour_ip[:dest_ip]]

[-port:sour_port[:dest_port]]]

-l 監聽所有信息

-lini 監聽信息有IPMan.ini的QueryIP和QueryPort過濾

-ip:sour_ip 過濾掉所有與sour_ip無關的IP包

sour_ip的格式為xxx.xxx.xxx.xxx

-ip:sour_ip:dest_ip 過濾掉非sour_ip與dest_ip之間通訊的IP包

-port:sour_port 過濾掉所有與sour_port無關的IP包

-port:sour_port:dest_port 過濾掉非sour_port和 dest_ip間通訊的IP包

[qeth:ip_addr] 查詢ip_addr對應的乙太網址

[-qip:eth_addr] 查詢eth_addr對應的IP位址,乙太網址的格式為 xx.xx.xx.xx.xx.xx(16進制)

[-fout:output_file] 輸出檔案

[-fcmd:command_file] 命令檔案,用於傳送ARP包、建立TCP連線等

詳見命令檔案一節

命令檔案

IPMan的命令檔案用於傳送ARP包、建立TCP連線和接收、傳送TCP報文。其格式為:

命令名 命令參數1 命令參數2 命令參數3 ...

現在支持的命令有:

SENDARP my_eth targ_eth sour_eth sour_ip

dest_eth dest_ip operation

傳送ARP報文。關於ARP報文,請參考TCP/IP協定。

CONNECT my_eth targ_eth sour_ip dest_ip

sour_port dest_port tcpid

建立從sour_ip的連線埠sour_port到dest_ip的dest_port連線埠的TCP

連線。用tcpid作為標識。這個標識將用於下列命令。要注意的是my_eth(我的乙太網址)和targ_eth(目的乙太網址)一定要填寫。 SENDTCP tcpid tcpmessage傳送TCP報文。將tcpmessage傳送到tcpid指定的連線。tcpmessage為一個不含空格的字串。空格或不可顯示字元以xxx表示。xxx為 三位十進制數。

RECVTCP tcpid

接收由tcpid指定的TCP報文。

CLOSE tcpid 關閉由tcpid指定的TCP連線。

以下是一個命令檔案的樣板。以"#"開始的行是注釋行。

--------------cut here--------------

# A sample comment line

SENDARP xx.xx.xx.xx.xx.xx xx.xx.xx.xx.xx.xx

xx.xx.xx.xx.xx.xx xxx.xxx.xxx.xxx

xx.xx.xx.xx.xx.xx xxx.xxx.xxx.xxx 2

CONNECT xx.xx.xx.xx.xx.xx xx.xx.xx.xx.xx.xx

xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx

1026 21 1

RECVTCP 1

SENDTCP 1 USER

RECVTCP 1

SENDTCP 1 PASS

RECVTCP 1

SENDTCP 1 BYE

RECVTCP 1

CLOSE 1

輸出

錯誤輸出到螢幕。標準輸出可以可以是螢幕或由命令行指定。輸出格式為:

xxx.xxx.xxx.xxx -> xxx.xxx.xxx.xxx // 源和目的IP位址

xx Byte(s) TCP/UDP/ARP/ICMP

Message:message_string

其中message_string的格式和上節的tcpmessage相同。xx Byte(s)表示實際收到的位元組數。真正輸出的位元組數由INI檔案指定。

將來

今後的版本將提供的功能包括建立偽UDP連線,傳送和接收UDP報文,傳送和接收 ICMP報文等。

葉問

電影《葉問》的英文名“IP MAN”

葉問為什麼會翻譯成IP MAN呢?

其實IP MAN僅僅是葉問的廣東話(香港話)發音(拼音),在廣東話裡面“葉”的拼音寫法是Ip,也可以是Yip,而“問”的話,廣東話拼音則是“man”。所以Ip man僅僅是葉問的一個廣東話拼音直譯而已,簡單明了,並不是什麼Super man之類的。

類似這種廣東話發音直接音譯的還有許多,譬如:

MCDULL:麥兜;張家輝:CHEUNG KA FAI;張學友:CHEUNG HOK YAU;劉德華:LAU TAK WAH;吳宇森:NG YU SUM;張曼玉:CHEUNG MAN YUK;周潤發:CHOW YUN FAT;梁朝偉:LEUNG CHIU WAI;謝霆鋒:TSE TING FUNG;郭富城:KWOK FU SHING;林青霞:LAM CHING HA……

相關詞條

相關搜尋

熱門詞條

聯絡我們