• 沒有找到結果。

網路流量自動監控系統

N/A
N/A
Protected

Academic year: 2021

Share "網路流量自動監控系統"

Copied!
62
0
0

加載中.... (立即查看全文)

全文

(1)

逢 甲 大 學

資 訊 工 程 學 系 專 題 報 告

網路流量自動監控系統

李 育 安 (四甲)

生: 王 建 智 (四甲)

程 柏 綸 (四甲)

指 導 教 授 : 李 維 聰 教授

中 華 民 國 九 十 一 年 十 一 月

(2)

目 錄

圖表目錄 ...Ⅲ 第一章 前言 ...1 第二章 軟硬體簡介 ...2 2.1 硬體 ...2 2.2 軟體 ...3 2.2.1 Apache ...4 2.2.2 PHP ...11 2.2.3 MySQL ...12 2.2.4 NTOP ...16 2.2.5 RRD Tool ...17 2.2.6 其他軟體 ...17 第三章 軟體整合及其應用 ...26 3.1 系統架構圖 ...26 3.2 NTOP 應用 ...27 3.2.1 NTOP 和 MySQL 之結合 ...27 3.2.2 NTOP 和 RRD Tool 的應用 ...27 3.3 LAMP ...27 3.3.1 MySQL 在本系統中的應用 ...27 3.3.2 PHP 和 MySQL 結合 ...31 第四章 系統功能展示 ...33 4.1 系統操作流程圖 ...33 4.1.1 顯示全部資料 ...33 4.1.2 查詢指定資料 ...34 4.2 基本功能簡介 ...36 4.3 本系統的優缺點 ...48 4.4 系統未來發展 ...48 第五章 專題心得 ...49

(3)

5.1 專題實作歷程 ...49

5.2 組員個人心得 ...50

第六章 參考網址 ... ...54

附錄 A NTOP 資料庫 Table 欄位詳細說明 ...55

(4)

圖 表 目 錄

第三章 軟體整合及其應用 圖 3.1 系統架構圖 ...26 圖 3.2 互動式網頁 ...31 第四章 系統功能展示 圖 4.1 顯示全部資料系統流程圖 ...33 圖 4.2 查詢指定資料系統流程圖 ...34 圖 4.3 基本功能選單 ...36 圖 4.4 顯示 NameMapper 表格中所有資料 ...36 圖 4.5 輸入 140.134.25.22 查詢 NameMapper 表格的結果 ... ...37 圖 4.6 顯示 Hosts 表格中所有資料 ...38 圖 4.7 輸入 140.134.25.22 查詢 Hosts 表格的結果,為模糊查詢 . ...38 圖 4.8 顯示 IPtraffic 表格中所有資料 ...39 圖 4.9 輸入 140.134.25.22 查詢 IPtraffic 表格的結果,為模糊 查詢 ...39 圖 4.10 顯示 NonIPtraffic 表格中所有資料 ...40 圖 4.11 輸入 140.134.25.22 查詢 NonIPtraffic 表格的結果,為 模糊查詢 ...41 圖 4.12 查詢 Server 為 140.134.25.22 其 FTP 在 2002-10-01 的連 線資料 ...42 圖 4.13 輸入欲查詢資料 ...43 圖 4.14 各協定所佔的連線資料量的比例 ...43 圖 4.15 FTP 的 TOP 10 ...44 圖 4.16 由圖 4.13 -->4.16 利用超連結來做查詢的結果 ... ...44 圖 4.17 HTTP 的 TOP 10 ...45 圖 4.18 RRD1,下接圖 5-19(FTP、HTTP、X11、Email、NetBIOS、 SNMP、NFS) ...45 圖 4.19 RRD2,延續圖 5-18,(Multicast、Broadcast、Unicast、 TCP、UDP、ICMP) ...46 圖 4.20 RRD3,延續圖 5-19(Attemped、Established、Reset、 Rejected、Invalid Flags) ...46 圖 4.21 CodeRed 攻擊時間 ...47 圖 4.22 Nimda 攻擊時間 ...47

(5)

第 一 章 前 言

隨著網際網路迅速的發展,如網路遊戲與網路視訊等,並且近年 來各式各樣的網路應用相繼推出,頻寬的使用遠遠趕不上使用者的需 求。並且有愈來愈多的使用者與怪客(cracker),常常透過一些工具來 照成網路的癱瘓或是拖慢網路的速度,因此適當的網路管理是有其必 要的。大多數的學校大多只使用 MRTG 來做一些網路的管理,但是 MRTG 的資訊實在有限,因為 MRTG 只能知道網路傳輸的全部的流量,並沒法 更深入的去了解真正的問題所在,假使我們想知道是某一個 IP 的單獨 的傳輸量是多少或是想知道某一個區域所有的傳輸量的種類的分布 時,MRTG 並沒有辦法提供這類的訊息,而一般人又不能登入 router 去實際了解網路傳輸狀態。 而在網路上的有很多的網路管理工具軟體像是 MTRG、Netflow、 CoralReef..etc,而我們選擇 NTOP(network on top)是因為 NTOP 擁有 許多強大的功能 ex:MAC address 和 IPaddress 的對應,還有網路上各 種的伺服器的分類,還有 IP 被多從使用的標示及各 IP 的流量大小, host 開機的時間,Packet 的各種類型的分類...etc。重點是 NTOP 可 以使得網路透明化,因此我們決定利用 NTOP(network on top)來去幫 助我們來讓我們更深入的去了解網路傳輸的情況利用 NTOP 結合

Database 並且加上一些工具來和 NTOP 及 Database 結合,讓我們可以 更了解網路傳輸的情況。

(6)

第 二 章 軟 硬 體 簡 介

2.1 硬體 CPU: Duron600 RAM: 128MB O.S.: Redhat 7.2 2.2 軟體 需要哪些 WWW 服務: 在 RedHat 中預設的 WWW 伺服器是很有名的 Apache 這一套,而 這一套 www 軟體目前最熱門的是 1.3.XX 版,以下我們要介紹的就是 Apache 這一套 Web 架站軟體啦!

先來瞭解一下何謂 WWW ,WWW 是 World Wide Web 的縮寫,其中, Web 有廣播網的意思存在,所以,簡單的說,WWW 就是全球資訊網,可 以結合文字、圖形、影像及聲音等多媒體,並透過超連結(Hypertext) 的方式,將資訊透過 Internet 傳遞到世界各處!那 WWW 的資料是如 何傳遞的呢?如果你常上網瀏覽的話(不論是使用 IE 或是 Netscape),你應該會知道你只要在網址列上面輸入 http://www.fcu.edu.tw 就可以將逢甲網頁的資料捉到你的瀏覽器 中,以供你觀看!這個 http://www.fcu.edu.tw 就是所謂的 URL , 其中 www.fcu.edu.tw 就是所謂的領域名稱(Domain name),因此, 要你的 WWW 可以運作正常並且可以讓大家都可以連的進來,就最好一 定要申請一個名稱!也就是說,你的 DNS 一定要設定正確無誤才行! 所以,進行 WWW 的設定之前,你一定要『先具有 DNS 可以找到的主 機名稱,並且可以連上 Internet』! 不過,在開始進行 WWW 的設定之前,你可能要先瞭解一下你要你 的 WWW 伺服器為你作些什麼?是簡單的『靜態網頁』就夠了嗎?還是 需要活潑熱鬧的 PHP+MySQL 的『動態網頁』,或者是另外一套 apache + asp 的動態網頁呢?如果你只要你的 WWW 提供給你最簡單的靜態網 頁空間,那你可以只安裝 Apache 即可,而由於 Linux 安裝完畢後即 提供 WWW 的服務了,因此你只要去設定 WWW 即可。不過,如果你還要

(7)

其他的較為活潑的動態網頁的話,基本上,目前比較流行的就是 Apache+PHP+MySQL 以及 Apache+ASP 這兩組人馬,這裡我們將提供的 是 PHP+MySQL+Apache 的架站,不過,由於 MySQL 及 PHP 的功能也 是很強大的,但是在這裡我們僅將 MySQL 及 PHP 視為 Apache 的一 個模組,你應該要有個觀念,我們這裡提供的只是很基礎的東西, PHP 與 MySQL 並非僅是一個 Apache 的模組喔!這裡要小心! 行前準備: 在開始進行 WWW 的實作之前,要跟大家報告的是,由於 WWW 需 要在網路的情況下執行運作,因此你一定要: •可以連上 Internet: •具有 DNS 反查的功能: 具有這兩個先決條件之後,再來架設 WWW 主機吧!然後,如果你有製 作過網頁的話,應該會有聽過所謂的 Perl、ASP、Java 等等的語言, 這些語言的功能之一,就是可以使用來作為設計 WWW 的程式語言的一 種!那 PHP 是目前新興的一種程式語言,可以附在 WWW 中執行喔! 接下來,我們來介紹一下什麼是 Apache、PHP 與 MySQL: 1.下載 MySQL, php, apache 套件 : 要架設這樣的一個主機需要哪些套件呢?不就是: Apache、MySQL 及 PHP 囉!要從何處下載呢?你可以到中山大學的 FTP 站去搜尋 •中山大學 FTP 站: http://ftp.nsysu.edu.tw/htdocs/index.html 當然,你也可以到各個套件的發展處去下載: 我們需要的檔案有三個,分別是: •apache-1.3.20.tar.gz •php-4.0.6.tar.gz • mysql-3.23.41.tar.gz

(8)

2.解壓縮:

假如你將 Apache, MySQL 及 PHP 三個檔案放置在 /home/test 這 個目錄中,而要將資料解壓縮到 /usr/local 當中,則可以這樣下 指令:

[root@tsai /root]# cd /usr/local

[root@tsai local]# tar -zxvf /home/test/apache_1.3.20.tar.gz [root@tsai local]# tar -zxvf /home/test/mysql-3.23.41.tar.gz [root@tsai local]# tar -zxvf /home/test/tar -zxvf

/test/php-4.0.6.tar.gz 則在 /usr/local 中會多出三個目錄,分別是:apache_1.3.20, mysql-3.23.41, php-4.0.6。 2.2.1 Apache •Apache:目前 Apache 已經出到了 2.0.X 版,但是最廣泛使用的還 是屬於 1.3.X 版本,這一版本目前出到最新的 1.3.20 版,你可以上 Apache 主網頁去看看相關的資訊: 。Apache 主頁: http://httpd.apache.org/ 。Apache套件(由主頁下載): http://www.apache.org/dist/httpd/ •安裝 Apache 套件: 再來就是重頭戲啦,開始安裝 apache 囉!由於已經安裝了 php ,所 以在 /usr/local/apache_1.3.20/src/modules 中就會存在 php4 的 目錄!

[root@tsai /root]# cd /usr/local/apache_1.3.20 [root@tsai apache_1.3.20]# ./configure

--prefix=/usr/local/apache \

>--activate-module=src/modules/php4/libphp4.a

(9)

這個得先安裝過 php 才能使用這一個模組!

[root@tsai apache_1.3.20]# make; make install

這樣就安裝完畢啦!開始來設定 WWW 與測試相關的模組啦! 簡易設定 apache : 要來啟動 Apache 囉,在這一版(1.3.20)當中,已經只剩下一 個參數設定檔『httpd.conf』這個檔案。如果你是使用 RedHat6.1 原 本的 apache 則有三個檔案,分別是: •httpd.conf •access.conf •srm.conf 以下將以 apache_1.3.20 版進行說明,如果你是以舊版的 apache 安裝的話,請在其他兩個檔案中找尋相關的設定吧! • 原始碼安裝: 若使用原始碼安裝,且將預設的路徑設置在 /usr/local/apache 時,你的參數設定檔會在 /usr/local/apache/conf 中,而更動較大 的是主機網頁的放置目錄,更改成 /usr/local/apache/htdocs 這個 目錄中,至於 cgi 也是放置在 /usr/local/apache/cgi-bin 當中。 底下將以原始碼安裝的方法所產生的檔案來介紹 apache 的設 定。 基本設定: 1. 啟動 apache 服務: 基本上,只要你啟動 apache 之後,應該就可以在用戶端的瀏覽 器程式上看到你的主機預設的網頁了!啟動的方式為:

[root @tsai /root]# /usr/local/apache/bin/apachectl start

(10)

。apachectl stop: 停止 WWW 的服務; 。apachectl restart: 重新啟動 WWW 的服務,這個指令比較常 用在你修改了 apache 的參數後,重新啟動用的。 。apachectl status: 偵測 WWW 的狀態。 2. 3. 4. 更改中文首頁: 由於 WWW 的原始設定中,指定你的首頁名稱為 index.html 或者 是 index.htm ,然而這一版的首頁支援比較多的語言,因此你必須將 首頁檔案名稱修改一下:

[root @tsai /root]# cd /usr/local/apache/htdocs/

[root @tsai htdocs]# cp index.html.zh.Big5 index.html 上面這個步驟在設定你的首頁 現在你應該可以在其他的用戶端機器上連進來了!你現在可以開 啟 IE 或其他瀏覽器,然後在你的網址上打入你的DNS名稱(如果有的 話),或者是你的 IP 號碼,就可以看到你自己主機的首頁囉! 設定使用者權限: 由於你是以 root 的身份安裝 Apache 這個套件,所以如果無法 連上你的主機首頁,有可能是 WWW 的首頁放置的地方可能會有權限上 的問題,需要設定權限的地方在 /usr/local/apache/htdocs 及 /usr/local/apache/cgi-bin 這兩個目錄,你可以這樣設定: [root @tsai apache]# chmod 755 /usr/local/apache/cgi-bin [root @tsai apache]# chmod 755 /usr/local/apache/htdocs 你也可以設定成 744 的權限喔!

設定自動執行:

另外,為了讓你的 WWW 及 MySQL 服務可以一開機就執行,所以 你可以將下面兩行啟動的 scripts 寫在你的 /etc/rc.d/rc.local 的最後面:

(11)

/usr/local/apache/bin/apachectl start /usr/local/mysql/share/mysql/mysql.server start • 這樣一來,每次你開機時, Linux 就會自動去執行 apache 及 MySQL 囉! 開始設定 httpd.conf 檔案: 說了一些拉拉雜雜的話後,終於要來實際設定 httpd.conf 這個檔 案囉,請以 vi 來編輯吧。

[root @tsai /root]# cd /usr/local/apache/conf [root @tsai conf]# vi httpd.conf

1. 基礎環境設定:以下這些在 httpd.conf 中的選項分別代表的意義 為: ServerType standalone 上面在設定啟動 apache 的狀態,如果是 standalone 表示開機即 執行,通常我們都是選擇 standalone 這個(預設值),不過,若選擇: ServerType inetd :則表示使用網際網路的服務來連線時才啟動! ServerRoot "/usr/local/apache" 表示 apache 的目錄所在地 Timeout 300 這是用來設定連接到你這部主機的用戶端,當超過 300 秒用戶端還 沒有辦法連上你的主機時,就予以斷線處理! MinSpareServers 5 若是小站或是一般小型個人網站,可以改成 3 MaxSpareServers 10 若是小站或是一般小型個人網站,可以改成 5 StartServers 5 MaxClients 150 若是小站或是一般小型個人網站,可以改成 100 上面兩個是開啟 httpd 服務數目的地方,當你執行 httpd 之後,

(12)

在 shell 下執行 ps -aux|grep httpd 就可以看到 httpd 的數目 量,通常這與你的 RAM 有關,如果是小站的話,可以設小一點,例如 最小設 3 最大設 5 即可!而 StartServers 則設與 Min 相同即 可! 至於 MaxClients 則可以設小一點,因為設定太大很耗系統資源, 而太小則無法讓很多人連上來!所以可以設成例如 100。 Port 80 這東西盡量不用動,因為 www 服務的預設通訊口(port)就是 80, 除非你要自己架一個別人連不進來的網站(內部網站), User nobody Group nobody 將 apache 預設為 nobody 這個人及群組!意即所有人皆可以使用 ServerAdmin vbird@vbird.adsldns.org 這個是設定你的機器的 httpd 管理員帳號!設成你的帳號吧! ServerName vbird.adsldns.org 這是你主機的名稱,先將前面的註解符號拿掉吧!請設定吧,如果 你沒有主機名稱,就選 localhost 吧! BindAddress * 這是用來允許你的 WWW 接受虛擬 IP 的機器的項目,例如你的虛擬 網域為192.168.1.0 ,則可以將 * 改成 192.168.1.0 喔!通常如果 要接受虛擬 IP 的話,直接打 * 就好了! 2. 路徑設定: 以下的參數在設定每一個網頁或者是服務的路徑所在!(舊版在 access.conf 中) DocumentRoot "/usr/local/apache/htdocs" 上面這個在設定你的主機的主要首頁所在,由於我們設定主機名稱 為:vbird.adsldns.org ,則當別人在網址列上打入 vbird.adsldns.org 時, 系統將會把 /usr/local/apache/htdocs 這個路徑下的首頁檔案傳 出去! 你也可以自行改變這個路徑!

(13)

<Directory "/usr/local/apache/htdocs">

Options Indexes ExecCGI FollowSymLinks MultiViews AllowOverride None

Order allow,deny Allow from all </Directory> 上面顯示在主機主網頁放置的目錄下 WWW 所可以進行的事情! options 為網頁可以進行的工作,可以複選,有以下的幾個項目: ExecCGI:表示可以在這個目錄中執行 CGI 程式; FollowSymLinks:表示可以連結至他處; MultiViews:表示可以執行動畫、音樂等項目 AllowOverride None 表示任何人都可以讀取資料;

至於 Allow from all 則表示你的主機接受任何位置來源的連接。 <IfModule mod_userdir.c> UserDir public_html </IfModule> 上面這個選項需要開啟,那樣你的用戶帳號才可以有首頁! 而你用戶的首頁放置在 /home/user/public_html 下,你可以將 public_html 改成 WWW ,則用戶的首頁就需要放在 /home/user/www,若以上面的設定,則以我為例,我的首頁需要放在 /home/vbird/public_html 底下才行! <IfModule mod_dir.c>

DirectoryIndex index.html index.htm index.php </IfModule> 這個是用來說明首頁的檔案名稱,通常預設值是 index.html,但是 有些 網頁編輯器的附檔名是 index.htm ,所以你可以加上後面的幾個檔 名, 如此一來,你的首頁就可以支援多種檔名了! •基本上均使用預設值也就可以了! 3. 開啟 PHP 與其他模組: 由於我們需要可以支援 php 模組的 apache ,所以需要將

(14)

這個模組開啟喔! AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps 將這兩個模組的註解取消,請注意,這個是 php4 的模組,不要與 php3 模組搞混了! 因為我們是安裝 php4 版的幽! AddHandler cgi-script .cgi

上面這一行的註解也可以拿掉,這樣用戶端才能使用 CGI 程式! 4. 開啟 Apache 狀態列: 我們可以透過 IE 等瀏覽器來觀看主機的 apache 執行情況,若 你需要這個服務,就要將下面的註解取消掉: <Location /server-status> SetHandler server-status Order deny,allow

Deny from all

Allow from .your_domain.com </Location>

<Location /server-info> SetHandler server-info Order deny,allow

Deny from all

Allow from .your_domain.com </Location> 將上面的 .your_domain.com 改成你的 DNS , 例如我可以改成 .adsldns.org 喔!這樣一來, 只有 adsldns.org 的機器可以看到你的 apache 的執行狀態! 如何觀看,以我為例,只要在網址列輸入 http://www.vbird.adsldns.org/server-status http://www.vbird.adsldns.org/server-info 則來自 adsldns.org 的用戶即可看到我的主機狀態! 5. 重新啟動: 只要下達 /usr/local/apache/bin/apachectl restart 即可執行

(15)

httpd 囉!到這裡就設定完畢了,執行你的 IE 連上你的網路看看 吧!(如果有問題的話,請重新啟動 Linux 吧!)

2.2.2 PHP

•官方的說法為:『PHP is a tool that lets you create dynamic web pages. PHP-enabled web pages are treated just like regular HTML pages and you can create and edit them the same way you normally create regular HTML pages.』

PHP (Hypertext Preprocessor)是一種伺服器端崁入式HTML語言, 它的語法大致上與C/C++、Perl、Java相似,只要有簡單的程式設計觀 念便可以輕易的上手,其功能與現今ASP功能類似,可以快速的寫出功 能強大的網頁。PHP除可以做一般的網頁功能外,並提供像一般CGI的 使用功能、cookies的功能、檔案上傳、WWW使用者身分證明、GIF動畫 (需編輯組態加入GD library)等。 同時PHP也支援一般Unix系統所使用的資料庫,它提供的資料庫列表如 下:

Adabas D InterBase Solid dBase mSQL Sybase

Empress MySQL Velocis FilePro Oracle Unix dbm Informix PostgreSQL

另外PHP也提供IMAP, SNMP, NNTP, POP3, HTTP的TCP/IP通訊協定上使 用。

• 增加 PHP 模組:

基本上,PHP 可視為 Apache 的一個模組,由於是屬於 apache 的 一個模組,因此我們必須先針對 Apache 進行一次 configure 的設定 偵測,這樣才能將 php 增加至 apache 當中,詳細步驟如下: [root@tsai /root]# cd /usr/local/apache_1.3.20

[root@tsai apache_1.3.20]# ./configure

--prefix=/usr/local/apache (此行接在 ./configure後) 上面的指令是要將 apache 安裝在 /usr/local/apache 的意 思,請注意,要先針對 apache 設定偵測一次才行安裝 php 喔!

(16)

[root@tsai apache_1.3.20]# cd /usr/local/php-4.0.6 [root@tsai php-4.0.6]# ./configure --with-apache=/usr/local/apache_1.3.20 \ > --with-mysql=/usr/local/mysql \ > --enable-track-vars 請注意上面的指令,中間那三行後面都要接一個 \ 的符號,這是 指令繼續的意思,也就是說,其實上面最後四行視為同一行的指令! 你也可以將上面的指令寫成一長串另外,要注意的是,apache 需要指 向剛剛偵測過設定的目錄,而 mysql 則指向已經安裝完畢的目錄!千 萬不要搞錯囉! [root@tsai php-4.0.6]# make

[root@tsai php-4.0.6]# make install 開始安裝囉!安裝完畢之後,會在 /usr/local/apache_1.3.20/src/modules 中多一個 php4 的子目 錄,裡面就存在了 php4 的主要程式庫囉! [root@tsai php-4.0.6]# cp /usr/local/php-4.0.6/php.ini-dist /usr/local/lib/php.ini 將主要的 php 設定檔 php.ini-dist 拷貝成 /usr/local/lib/php.ini 這個檔案,這是因為 apache 或其他程式執 行 php 時需要到 usr/local/lib/ 中去使用這檔案,如果您對 php 熟悉的話,可以修改 /usr/local/lib/php.ini 這個檔案,以符合你 的設定。 上面這樣就安裝完 php 套件囉! 2.2.3 MySQL 官方網站上的翻譯文件中這麼說:『MySQL是一個真正的多使用 者、多執行緒SQL資料庫伺服器。SQL(結構化查詢語言)是世界上最 流行的和標準化的資料庫語言。MySQL是以一個客戶機/伺服器結構的 實現,它由一個伺服器背景執行程式mysqld和很多不同的客戶程式和 庫組成。SQL是一種標準化的語言,它使得儲存、更新和存取資訊更容 易。例如,你能用SQL語言為一個網站檢索產品資訊及儲存顧客資訊, 同時MySQL也足夠快和靈活以允許你儲存記錄文件和圖像。MySQL 主要 目標是快速、健壯和易用。』

(17)

MySQL 是一個快速穩定多執行緒多使用者的資料庫伺服器,可以與 C、C++、Java、Perl、PHP 等語言很容易的連結,可以運作在許多平 台上 例如 : Sun Solaris 、RedHat 、Linux 、FreeBSD 、OS/2 、 Windows ...等平台,目前已經有相當多的企業單位採用。 •安裝 MySQL 套件: 如果你英文夠好的話,你可以到 /usr/local/mysql-3.23.41 這 個目錄中察看一下 INSTALL-SOURCE 這個檔案,裡面對於如何安裝適 合你的 MySQL 有很詳盡的說明。如果你要照我的步驟作的話,請往下 看吧!

[root@tsai /root]# cd /usr/local/mysql-3.23.41 [root@tsai mysql-3.23.41]# ./configure

--prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/var 上面這個步驟在檢查你的系統,以設定適合你的系統的資料!其 中, --prefix 後面接你要安裝的 MySQL 目錄所在, 而 –localstatedir 後面則是接你要將資料庫放置的地方,通常我們都會設定在 var 裡面 注意囉,上面的步驟按你的 CPU 而可以耗掉很長的時間

[root@tsai mysql-3.23.41]# make

[root@tsai mysql-3.23.41]# make install

上面兩個步驟在安裝 mysql 到你剛剛設定的 /usr/local/mysql 路徑中。

[root@tsai mysql-3.23.41]# ./scripts/mysql_install_db

如果你之前已經安裝過 MySQL 的話,這一步驟就不用安裝了,這 個步驟在產生 grant tables 這個東西!也就是資料庫啦! 這個步驟 很是重要,如果沒有此步驟,則你的 MySQL 是不會動作的!

[root@tsai mysql]# adduser mysql

[root@tsai mysql]# chown -R mysql:mysql /usr/local/mysql 上面這個步驟在產生 mysql 這個帳號及群組名稱,另外,將 /usr/local/mysql 這個剛安裝完畢的咚咚指定為 mysql 的所有,這

(18)

是為了安全性的考量,因為 mysql 的帳號與你原本 Linux 的帳號是 不同的喔!

[root@tsai mysql]# chmod 777 mysql.server

上面這個步驟再將你的 mysql.server 這個啟動 mysql 的執行 檔, 設定成大家都可以使用的格式。

[root@tsai mysql]# /usr/local/mysql/bin/safe_mysqld --user=mysql &

上面這一行在以 mysql 這個人來啟動 mysql 的服務喔! [root@tsai mysql]# /usr/local/mysql/bin/mysqladmin -u root password abcde

上面這一行在設定 root 的 mysql 密碼,其中 abcde 是密碼,你 可以自行設定喔! 上面這樣就安裝完畢了!完成安裝後就要開始測試你的 MySQL 囉! 測試 MySQL 及 PHP 套件: 要測試這兩個套件前請先確定 MySQL 及 Apache 已經被啟動 了!OK,來做測試吧! • php 測試: 你可以編輯一個檔案,檔案名稱可以為 test.php ,然後將這個 檔案放置在 /usr/local/apache/htdocs 當中(就是你的主機的網頁 所在地喔!)

[root @tsai /root]# vi /usr/local/apache/htdocs/test.php <? phpinfo( ); ?> •然後連上你的主機,以我為例,我就要輸入 http://140.134.25.22/test.php 這樣就可以看到你的 php 狀態 囉!也就是你的 php 就可以執行了! • MySQL 測試:

(19)

同樣的, MySQL 也是編輯一個檔案,執行看看可不可以即可: [root @tsai /root]# vi

/usr/local/apache/htdocs/mysqltest.html <html> <body> <? $link=mysql_connect('localhost','root'); mysql_select_db('mysql');

$str="select * from user;";

$result=mysql_query($str,$link); $show=mysql_num_rows($result); mysql_close($link);

for ($i=0;$i < $show;$i++) {

$arr[$i]=mysql_fetch_array($result); };

?>

<table align=center border=1> <tr align=center> <td>Host</td> <td>User</td> <td>Password</td> </tr> <?for ($i=0;$i<$show;$i++){?> <tr> <td><?echo $arr[$i][Host]?></td> <td><?echo $arr[$i][User]?></td> <td><?echo $arr[$i][Password]?></td> </tr> <?};?> </body> </html> • 然後同樣的執行 http://140.134.25.22/mysqltest.html 即可知 道你的 mysql 是否可以執行! 寫入第一個個人首頁:

(20)

如果你的網站支援給用戶放置個人網頁的話,那你的個人網頁在 哪裡呢?剛剛我們有提到在 httpd.conf 的設定中,有一項關於個人 首頁的設定,通常如果你不設定 httpd.conf 檔案的話,他的預設值 都是 public_html ,好了,那要如何設定個人網頁呢?假設以 vbird 這個帳號為例,我們可以這樣進行:

[vbird @vbird vbird]$ mkdir public_html [vbird @vbird vbird]$ chmod 755 public_html [vbird @vbird vbird]$ chmod 755 /home/vbird

在你的用戶端家目錄中建立了一個 public_html 的目錄, 並將此目錄的權限改成可以讓其他人觀看,注意喔, apache 預設是 public_html ,但是如果你在 httpd.conf 這個檔案中 改變了目錄名稱,則必須作適當的修正喔! 然後在你的目錄中,亦即 /home/vbird/public_html 當中,建立一個 檔名為 index.html 的 HTML 檔案,例如我們剛剛測試的 php 的檔 案,然後在 IE 的網址列打入 http://你的網站名稱/~vbird/ 則 apache 會自動將 IE 的訊息傳到 /home/vbird/public_html 這個目 錄中,並搜尋檔名為 index.html 或 index.htm 或 index.php 的檔 名!所以說, index.html 是 apache 第一個找尋的檔名喔!這就是 你的首頁啦! 然後你就可以經由 php 寫你的網頁資料,並將之放置在 public_html 這個目錄下,就好了!不過用這個方法寫網頁時,需要 注意的是,附檔名是 php3 的檔案將不會被執行,所以你要將 php3 改 成 php 比較妥當! 2.2.4 NTOP NTOP 的由來 Ntop 是由義大利Pisa 大學的一位網路管理員所設計,為了能掌 控整個網路的運作,所以他安裝了許多套的網路監控工具,因為如此, 所以有許多人認為是他使造成整個網路的使用速度降低,為了證明他 並不是使網路速度降低的元兇,所以他就想設計出一套功能強大並可 在許多平台上執行的網路監視軟體NTOP 和其它網路監控軟體的差異。 NTOP 提供跨平台且鉅細靡遺的網路使用紀錄,包含各種通訊協定 的個別流量、排名紀錄和分析、各種流量所分配的百分比、詳細的連 線記錄(data sent IP) 、詳細的個別IP 資料(卡號、網路卡型號、

(21)

連線位址、時間、流量…)NTOP 提供了各IP 詳細的連線使用紀錄, 故可以偵測到是否有不正常使用網路的狀況發生(是否有盜用IP、連線 到不該去的地方、提防機密資料的外流、流量過大可瞭解到網路的使 用瓶頸,進而調整目前的網路服務的配置(HTTP server,FTP server 和 proxy server 之間的關係,各SERVER 間的頻寬配置),並提前做網路 擴充的計畫。

NTOP 的運作原理利用libpcap 的擷取封包功能將封包分析後存 入資料庫,並將其結果輸出。

2.2.5 RRD Tool

全文出自 http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/

If you know MRTG, you can think of RRDtool as a

reimplementation of MRTGs graphing and logging features. Magnitudes faster and more flexible than you ever thought possible RRD is the Acronym for Round Robin Database. RRD is a system to store and display time-series data (i.e. network bandwidth, machine-room temperature, server load average). It stores the data in a very compact way that will not expand over time, and it presents useful graphs by processing the data to enforce a certain data density. It can be used either via simple wrapper scripts (from shell or Perl) or via frontends that poll network devices and put a friendly user interface on it

2.2.6 其他軟體 * MRTG MRTG 是在本組未找用 NTOP 前所用的工具,但因為抓取的資料有問 題加上功能不太合專體所需,因此最後放棄使用。 以下簡單介紹一下 MRTG 前言: 網路伺服器主機的資料總流量(網路卡的資料傳送總數),以及 CPU 使用率和特殊服務(例如 squid 的代理服務)等等的封包傳送率

(22)

(或者說是流量),是網路管理人員所必須要注意的事項,因為當主機 的 CPU 使用率過高的時候,系統可能呈現不穩定的狀態,而當流量過 高的時候,就需要注意是哪一個服務或者是哪一個傢伙在嘗試竊取我 們的資料呢?因此,網路管理方面,有必要瞭解一下,我們主機的流 量狀態,並視流量來加以限制或者是加大頻寬! 目前網路上有一套蠻好用軟體可以用來偵測主機的資料流量,這也是 各大伺服器常使用的軟體,就是 MRTG (Multi Router Traffic Grapher) 這一套軟體。MRTG 耗用的系統資源很小,因此有很多外掛的程式也依 附在 MRTG 底下,因為 MRTG 的繪圖挺漂漂的說!我們這裡僅提供下 面的偵測方法: MRTG 的運作過程: 要瞭解 MRTG 的運作,就必須瞭解一下 SNMP (Simple Network Management Protocol) 這個協定,因為 MRTG 是透過 SNMP 協定來監 控流量的。所以,所有的 MRTG 所偵測的裝置都必須符合 SNMP 的協 定。那什麼是 SNMP 呢?簡單的說,就是一種可以提供裝置(主機設 備)的各類資訊的一種協定,諸如:網路流量、主機名稱、CPU 用量等 等的資訊都可以藉由此一協定來提供。不過,由於不同廠牌的裝置可 能會有無法相容的情況,因而後來又有所謂 MIB (Management Information Base) 的協定產生。不論如何, MRTG 就是藉由 SNMP 這 個協定來監測與取得相關的資訊以製作圖表的!詳細的 SNMP 你可以 在 http://www.net-snmp.org/ 查得。 所以我們可以知道,MRTG 基本上是透過以 SNMP 的協定,向主機 詢問相關的資料後,主機傳遞數值給 MRTG 程式,然後 MRTG 再繪製 成網頁上的圖表。由於 MRTG 是以 SNMP 協定來向主機要求資料,因 此,您要使用 MRTG 來製作圖表時,必須先確定您的機器(或者說是 設備)必須支援 SNMP 協定。好在 Linux 上面的網路卡,通常已經支 援了 SNMP 協定了!當然, Windows 2000 也可以被偵測的到喔! 另外,有一點是特別需要注意的,在 mrtg 這個程式中,其實他 總共需要要求四個數據(前兩個用來作圖,後兩個提供相關資訊,基 本上,繪圖只會用到前兩個數據),因此,你可以隨時製作 MRTG 的圖 表,只要你能提供兩個數字(當然要是數字了,不然如何作圖!)給 mrtg 即可製圖!這個在後面的偵測 CPU 或者是 RAM 的地方,加掛自 己寫的程式後,就可以得到啦! 安裝前的準備工作:

(23)

MRTG 為使用 Perl 程式寫成的,並且使用到 zlib 、 gd 及 png 的函式庫(zlib 用來壓縮圖表、gd 用來繪製圖表),且由於 MRTG 乃使用 SNMP 協定,並且最後是以 HTTP 的網頁型態輸出成圖 表,因此,你需要確定 Linux 主機中已經含有下列的套件: o perl (perl-5.0xx 以上) o zlib (zlib-1.1.3-xx 以上) o gd (gd-1.3.xx 以上) o libpng o apache 確定的方法就以 RPM 來確認吧:

o rpm -qa | grep perl o rpm -qa | grep zlib o rpm -qa | grep gd o rpm -qa | grep libpng

另外的另外,由於 MRTG 的圖表顯示是以 HTTP 的型態(Web 的 型態)來顯示的,因此,你也必須安裝好了 Apache 這個套件,如果 沒有安裝好的話,請到這個網頁的 Linux 架站文件去看看吧!以下, 我們使用了預設的 Apache 路徑,為 /usr/local/apache/htdocs 這 個路徑來安裝 mrtg 輸出的圖表,要注意,如果沒有 apache 的話, 那就沒有辦法顯示圖表了(雖然可以執行 MRTG !!) 其實在 Linux 安裝完畢之後,上面的幾個(除了 apache 可能會 更新之外)套件都已經安裝好了!所以你可以直接來安裝 MRTG 囉! 開始安裝 MRTG: 由於 MRTG 是透過 SNMP 通訊協定來要求資料,因此你的 Linux 上面需要先安裝相關的軟體,通常我們都是安裝 ucd-snmp 這套軟體 的,那就來安裝吧! 1.下載 ucd-snmp-4.2.1.tar.gz, mrtg-2.9.17.tar.gz ; 2.安裝 ucd-snmp-4.2.1.tar.gz:

oot @tsai /root]# cd /usr/local/src

(24)

oot @tsai src]# tar -zxvf ucd-snmp-4.2.1.tar.gz oot @tsai src]# cd ucd-snmp-4.2.1

oot @tsai ucd-snmp-4.2.1]# ./configure prefix=/usr/local/snmp

...(過程我就省略了)

************** Configuration Section ************** You are about to be prompted by a series of

questions. Answer

them carefully, as they determine how the snmp agent and related applications are to function.

After the configure script finishes, you can browse the newly

created config.h file for further - less important - parameters to

modify. Be careful if you re-run configure though since config.h will

be over written.

-Press return to continue- (這裡按 enter 吧) disabling above prompt for future runs... yes checking System Contact Information...

*** System Contact Information:

Describes who should be contacted about the host the agent is

running on. This information is available in the MIB-II tree. This

Can Also Be Over-Ridden Using The "syscontact" Syntax In The Agent'S

Configuration Files.

System Contact Information (root@):root@tsai.adsldns.org (這 裡輸入你的 e-mail)

(25)

to... root@tsai.adsldns.org checking System Location...

*** System Location:

Describes the location of the system. This information is

available in the MIB-II tree. This Can also be over-ridden using the

"syslocation" syntax in the agent's configuration files. ystem Location (Unknown):RedHat 6.1 S(這裡可以隨便輸入,不 正確也沒關係)

setting System Location to... RedHat 6.1 checking Location to write logfile...

*** Logfile location:

Enter the default location for the snmpd agent to dump information & errors to. If not defined (enter the keyword "none"

at the prompt below) the agent will use stdout and stderr instead.

(Note: This value can be over-ridden using command line options.)

Location to write logfile (/var/log/snmpd.log):(按 enter 即 可)

setting Location to write logfile to... /var/log/snmpd.log checking Location to write persistent information...

*** snmpd persistent storage location:

Enter a directory for the snmp library to store persistent

(26)

data in the form of a configuration file.

Location to write persistent information (/var/ucd-snmp):(按 enter 即可)

[root @tsai ucd-snmp-4.2.1]# make

[root @tsai ucd-snmp-4.2.1]# make install

上面輸入的資訊,在進行 MRTG 的製圖時,會顯示在圖表上面,不過, 這也是可以改的資訊,所以,如果不小心輸入錯誤也沒關係的。這樣 就將 ucd-snmp 安裝妥當了! 3.啟動 ucd-snmp : 直接在 shell 下面打上 /usr/local/snmp/sbin/snmpd 即可!或者 直接加在 /etc/rc.d/rc.local 當中,就可以自動開機時啟動了! 4.安裝 MRTG :

[root @tsai /root]# cd /usr/local/src

[root @tsai src]# cp /root/mrtg-2.9.17.tar.gz . [root @tsai src]# tar -zxvf mrtg-2.9.17.tar.gz [root @tsai src]# cd mrtg-2.9.17 [root @tsai mrtg-2.9.17]# ./configure --prefix=/usr/local/mrtg-2 \ > --with-gd=/usr/include \ > --with-gd-lib=/usr/lib \ > --with-gd-inc=/usr/include \ > --with-png=/usr/include \ > --with-zlib=/usr/include

[root @tsai mrtg-2.9.17]# make; make install [root @tsai mrtg-2.9.17]# mkdir

/usr/local/apache/htdocs/mrtg (請注意,這裡與你的 WWW 主頁 的放置地點有關,請依你的系統來設定,另外,由於我們需要設定 網 路流量、CPU 與 RAM 使用率,因此在 mrtg 中,可以再建立三個子目 錄,比較容易管理啦!)

[root @tsai mrtg-2.9.17]# mkdir /usr/local/apache/htdocs/mrtg/net [root @tsai mrtg-2.9.17]# cp

(27)

images/* /usr/local/apache/htdocs/mrtg/net (將一些影像檔拷 貝到即將使用的目錄中去備用) 就樣就安裝妥當了!再來就是開始要設定 MRTG 的組態囉! 偵測網路卡流量: 要使用 mrtg 來作圖真的是太簡單了,只要幾個小 步驟就可以自動的監測流量喔!首先以 mrtg 附的程式來製作一個參 數檔 (預設檔名是 mrtg.cfg),然後修改一下 mrtg.cfg 這個參數檔 之後,在直接執行三次參數檔,之後以 mrtg 程式附的小軟體,直接 製作成首頁,就可以察看圖表囉!看下去吧! 1.設定 MRTG:

[root @tsai mrtg-2.9.17]# cd /usr/local/mrtg-2/bin [root @tsai bin]# ./cfgmaker

--output=/usr/local/apache/htdocs/mrtg/net/mrtg.cfg \ > public@vbird.adsldns.org

上面這個步驟會在你的主機上面製造一個參數檔,

而你未來的設定都會自動的在這個參數檔中設定完成了! [root @tsai bin]#

vi /usr/local/apache/htdocs/mrtg/net/mrtg.cfg 不過由於程式自動設定的 mrtg.cfg 有些地方會有瑕疵, 因此,請將底下這三行修改成你的樣式喔!

WorkDir: /usr/local/apache/htdocs/mrtg/net/ Options[_]: growright, bits

Language: big5 [root @tsai bin]# ./mrtg /usr/local/apache/htdocs/mrtg/net/mrtg.cfg 開始測試你的參數檔,正常的話,進行 這個動作要執行三次,就可以正常工作了, 不過,若是有問題的話,就需要改 mrtg.cfg ,再執行直到沒有錯誤 發生為止!

[root @tsai bin]# ./indexmaker \

> --output=/usr/local/apache/htdocs/mrtg/net/index.html \ > --title=VBird 主機流量統計表 \

(28)

上面這個程式 indexmaker 是在製作首頁!當然,你也可以自訂首 頁! 上面是說,會自動的輸出一個 index.html 的檔案到 /usr/local/apache/htdocs/mrtg/net 中,就是主網頁啦! 上面請特別注意:在 public@vbird.adsldns.org 這一行呢,public 是有其意義的(在 snmp 這個通訊服務裡面的預設搜尋的一個代碼), 所以,如果你的主機的動態 DNS 名稱為 your.domain.name 則你就 『一定』要寫成 public@your.domain.name 才行!千萬不要弄錯了! 已經有很多網友遇到這個問題! 2.設定五分鐘偵測一次: 好了,開始偵測吧,就修改 /etc/crontab 吧! [root @tsai bin]# vi /etc/crontab

#1. Runing The MRTG Net Flow Control

*/5 * * * * root /usr/local/mrtg-2/bin/mrtg

/usr/local/apache/htdocs/mrtg/net/mrtg.cfg > /dev/null 2>&1 這樣就每五分鐘可以自動偵測一次網路卡的流量囉! 3.設定 Web site: 以上面的例子為例,則你的 mrtg 圖表在: http://your.host.domain/mrtg/net/index.html 就可以看到你的主機上網路卡的流量囉! 好了,重點說完了,再來說說在 mrtg.cfg 這個參數檔當中你看到的 幾個參數的意義吧! •Target[裝置名稱]: 。Target[vbird.adsldns.org_2]: 2: public@192.168.1.2 上面是一般的用法,其中半括號內的是裝置的名稱,同一個裝置 的各參數中,這個名稱要一致!

(29)

。Target[vbird.adsldns.org_3]: `/usr/local/apache/htdocs/mrtg/cpu/mrtg.cpu` 後面接的是一個自訂的加掛的可執行檔案,這個檔案執行之後,會顯 示四個數據,這樣就可以繪圖了!在繪製非 MRTG 程式的預設咚咚 中,這個是最常使用的方法了! •MaxBytes[裝置名稱]: 。MaxBytes[vbird.adsldns.org_2]: 1250000 後面的數字代表資料監測時,最大的傳送速率,使用 bytes,所以 10Mbps 則為 1.25MBytes,大約是 1250000 Bytes。這個數值程式會 自動判斷啦!不過你也可以自己修改,用到這個數字的時候是在你的 圖表下方,每一個說明後面的(xx%)時用到的。 。MaxBytes[vbird.adsldns.org_3]: 100 如果你的資料並不是 Bytes 時,例如監測 CPU 負載率時,那這個數 值就需要改變啦! •Options[裝置名稱]:

。Options[vbird.adsldns.org_2]: growright, bits (用在網 路流量中)

。Options[vbird.adsldns.org_3]: growright, nopercent, gauge (用在 CPU 負載中)

growright:將資料隨時間變化的順序以右而左繪圖; bits:資料單位為 bits;

nopercent:在圖下方的說明文字中,不顯示百分比; gauge:圖表的上限固定!

(30)

第三章 軟 體 整 合 及 其 應 用

3.1 系統架構圖 資料流: 背景程式: NetWork Packets Ms ProtoUsage.pl and nwUsage.pl Mysql.pl Embedded web in ntop Port 3000 Apache Web Server

PHP index 網頁 PHP Module

NTOP

RRD 圖3-1 系統架構圖 本系統是利用NTOP抓取網路資料,雖然NTOP本身可以將資料以Web 顯示畫面顯示但其顯示的資訊並非都是必需的,所以將其抓取到的資

(31)

料導入MySQL Database再利用PHP設計一個所需要的簡單Web管理介面。 此外又結合其他軟體(如RRD Tool)用來作為網路流量監控工具 3.2 NTOP的應用 3.2.1 NTOP和MySQL之結合 | <-- host boundary | | +---+ TCP/IP +---+ +----+ | ntop | <---> | DB Client | <--> | DB | +---+ | +--- + +----+ | | 上圖是NTOP 和Mysql 的架構圖。 Ntop 是經由network的傳輸來store資訊。NTOP 程式抓取所需的資 料時會經過一支mysql.pl的程式來連結MySQL Database Clinet 端打 開UDP socket at the port 4000 然後等待Packet 進來,在此之前需 在Mysql 建立好table。 3.2.2 NTOP和RRD Tool的應用 RRD是一個很好用來儲存資料和畫圖的工具,因為它比MRTG可以依 需要做較彈性的設定來顯示所要的資料,故選擇RRD Tool。 3.3 LAMP LAMP(Linux、Apache、MySQL、PHP),為一具穩定、高效能、及 完全免費的組合且具有豐富的網路資源可供查詢,所以本小組以LAMP 作為系統開發的環境。 3.3.1 MySQL在本系統中的應用

(32)

+---+ | Tables_in_NTOP | +---+ | Hosts | | IPtraffic | | NameMapper | | NonIPTraffic | | TCPsessions | +---+ 1、Hosts:儲存連線主機的資料 +---+---+---+---+---+---+ | Field | Type | Null | Key | Default | Extra | +---+---+---+---+---+---+ | ID | int(11) | | PRI | NULL | auto_increment | | IPaddress | char(16) | | | | | | MACaddress | char(50) | | | | | | NICvendor | char(32) | | | | | | OsName | char(50) | | | | | | PktRcvd | int(11) | | | 0 | | | PktSent | int(11) | | | 0 | | | PktMulticastSent | int(11) | | | 0 | | | PktBroadcastSent | int(11) | | | 0 | | | DataSent | int(11) | | | 0 | | | DataRcvd | int(11) | | | 0 | | | FirstSeen | datetime | | | 0000-00-00 00:00:00 | | | LastSeen | datetime | | | 0000-00-00 00:00:00 | | | DataMulticastSent | int(11) | | | 0 | | | DataBroadcastSent | int(11) | | | 0 | | +---+---+---+---+---+---+ *NICvendor(網路卡型號)

2、mysql> describe IPtraffic:

(33)

| Field | Type | Null | Key | Default | Extra | +---+---+---+---+---+---+ | IPaddress | char(16) | | PRI | | | | TCPsentLoc | int(11) | | | 0 | | | TCPsentRem | int(11) | | | 0 | | | TCPrcvdLoc | int(11) | | | 0 | | | TCPrcvdFromRem | int(11) | | | 0 | | | UDPsentLoc | int(11) | | | 0 | | | UDPsentRem | int(11) | | | 0 | | | UDPrcvdLoc | int(11) | | | 0 | | | UDPrcvdFromRem | int(11) | | | 0 | | | ICMPsent | int(11) | | | 0 | | | ICMPrcvd | int(11) | | | 0 | | | OSPFsent | int(11) | | | 0 | | | OSPFrcvd | int(11) | | | 0 | | | IGMPsent | int(11) | | | 0 | | | IGMPrcvd | int(11) | | | 0 | | +---+---+---+---+---+---+ * ICMP:(Internet Control Message Protocol)

* OSPF:(Open Shortest Path First) 開放最短路徑優先

* IGMP:(Internet Group Management Protocol) Internet 群組管 理協定

3、mysql> describe NameMapper:

+---+---+---+---+---+---+ | Field | Type | Null | Key | Default | Extra | +---+---+---+---+---+---+ | IPaddress | char(16)| | PRI| | | | Name | char(50) | YES | | NULL | | +---+---+---+---+---+---+

*Name:IPaddress 的 Domain Name(區域名稱),經由 DNS 取得 4、mysql> describe NonIPTraffic;

+---+---+---+---+---+---+ | Field | Type | Null | Key | Default | Extra |

(34)

+---+---+---+---+---+---+ | IPaddress | char(16) | | PRI | | | | IPXsent | int(11) | YES | | NULL | | | IPXrcvd | int(11) | YES | | NULL | | | OSIsent | int(11) | YES | | NULL | | | OSIrcvd | int(11) | YES | | NULL | | | DLCsent | int(11) | YES | | NULL | | | DLCrcvd | int(11) | YES | | NULL | | | ARPsent | int(11) | YES | | NULL | | | ARPrcvd | int(11) | YES | | NULL | | | DECNETsent | int(11) | YES | | NULL | | | DECNETrcvd | int(11) | YES | | NULL | | | ATALKsent | int(11) | YES | | NULL | | | ATALKrcvd | int(11) | YES | | NULL | | | NBIOSsent | int(11) | YES | | NULL | | | NBIOSrcvd | int(11) | YES | | NULL | | | OtherSent | int(11) | YES | | NULL | | | OtherRcvd | int(11) | YES | | NULL | | +---+---+---+---+---+---+ * IPX:(Internet Packet Exchange )

* DLC:( DLC: Data-Link Control):資料連結控制, * ARP:(Address Resolution Protocol )

* DECNET:(Digital Equipment Corporation ) * ATALK:AppleTalk

* NBIOS:( NetBIOS )

5、mysql> describe TCPsessions;

+---+---+---+---+---+---+ | Field | Type | Null | Key | Default | Extra | +---+---+---+---+---+---+ | Client | char(18) | YES | | NULL | | | Server | char(18) | YES | | NULL | | | ClientPort | int(11) | YES | | NULL | | | ServerPort | int(11) | YES | | NULL | | | DataSent | char(16) | YES | | NULL | | | DataRcvd | char(16) | YES | | NULL | | | FirstSeen | datetime | YES | | NULL | |

(35)

| LastSeen | datetime | YES | | NULL | | | ID | int(11) | | PRI | NULL | auto_increment | +---+---+---+---+---+---+ 3.3.2 PHP 及 MySQL 結合 瀏覽器 WWW 伺服器 (Apache) 網頁應用程 式(PHP) 資料庫 (MySQL) 圖 3-2 互動式網頁 利用圖 4-2 的架構結合 LAMP 產生互動式網頁,讓使用者可以查詢資料 本系統中較重要的 mysql 函數: * mysql_connect([主機名稱][:port][,使用者名稱][,密碼]) //連結 MySQL * mysql_close(連結指標) //中斷 MySQL * mysql_select_db(資料庫名稱,[,連結指標]) //開啟資料庫 * 查詢指令:

SELECT * from table_name; $sql=”select * from aaa”;

//查詢結果傳回一個查詢指標($sql) *送出查詢:

(36)

*取得查詢結果: 使用 SELECT 查詢資料庫後傳回的是一個結果指標,而不是 PHP 程 式可以直接應用的資料值。所以 PHP 程式要使用查詢結果的資料,還 要經過取得結果的步驟。 取得結果的函數有 mysql_fetch_row(結果指標)、 mysql_fetch_array(結果指標)、mysql_fetch_object(結果指標)。 系統中主要用到 mysql_fetch_array(結果指標[,索引狀態]): 索引 型態是選擇性參數,不加時預設傳回的「陣列」會以傳回的紀錄的欄 位名稱當索引。 ◎ 簡單範例:

查詢 NTOP 資料庫中 IPtraffic 的所有資料並以 IPaddress 做遞增 排序,只寫出如何和 MySQL 連線並取得查詢資料

$link=mysql_connect("localhost","root"); //Apache、MySQL 放在同一主機,未設密碼, //連結伺服器成功後傳回一個連結指標($link) mysql_select_db("NTOP"); //開啟 NTOP 資料庫

$sql="select * from IPtraffic order by IPaddress"; //查詢結果傳回一個查詢指標($sql)

$result=mysql_query($sql,$link);

//送出查詢,並傳回一個查詢的結果指標($result) $show=mysql_num_rows($result); //紀錄查詢結果筆數 for ($i=0;$i < $show;$i++)

{ $arr[$i]=mysql_fetch_array($result);

//每執行一次就將一筆 row 的值放入陣列$arr[]

//取得結果,放入陣列$arr[i],以 table 欄位名稱做索引 };

(37)

第四章 系 統 功 能 簡 介

4.1 系統操作流程圖 系統中主要的流程圖有兩種(1)顯示全部資料:無條件查詢 資料庫中 table 的所有資料、(2)查詢指定資料:以輸入資料作條件 的查詢 4.1.1 顯示全部資料 顯示 NTOP 資料庫中的指定的 Table 的所有資料 圖 4-1 顯示全部資料系統流程圖 中斷與 MySQL 之 連結並關閉資料 結束程式 結束程式 顯示錯誤 訊息 失敗 開啟 NTOP 資料庫 顯示查詢結果於 網頁 送入 SQL 語法, 查詢所選擇的 Table 結束程式 顯示錯誤 訊息 失敗 連結 MySQL 開 始

(38)

4.1.2 查詢指定資料 在網頁上輸入查詢資料後送至資料庫做查詢 N o YES 重新查詢 成 功 失敗 SQL 語法檢 查 重整查詢關鍵字 成為 SQL 語法 結束程式 顯示錯誤 訊息 失敗 開啟 NTOP 資料庫 顯示查詢結果於 網頁 輸入查詢關鍵字 (IP、時間…) 結束程式 顯示錯誤 訊息 失敗 連結 MySQL 開 始

(39)

中斷與 MySQL 之 連結並關閉資料

結束程式

(40)

4.2 基本功能簡介

系統功能主要分為:(1)NamwMapper、(2)Hosts、(3)IPtraffic、 (4)NonIPtraffic(5)TCPsessions、(6)TOP 10、(7)RRD Tools、 (8)病毒監控

圖 4-3 基本功能選單

其中 1~5 為 NTOP 自動產生的 DataBase 之 Table 名稱 (1) NameMapper: 本功能可查詢 a.顯示全部資料、b.依 IPaddress 查詢 a.顯示全部資料:顯示 DB 中 NameMapper 的所有資料,範例如圖 4.4 b.依 IPaddress 查詢:查詢特定的 IPaddress,查詢時利用模糊 查詢,範例如圖 4.5

(41)

圖 4.4 顯示 NameMapper 表格中所有資料 由圖 4.4 可知共有 9876 筆其 IPaddress 具有相對應的名稱 圖 4.5 輸入 140.134.25.22 查詢 NameMapper 表格的結果 圖 4.5 顯示欲查詢 140.1354.25.223 但卻只記得 140.134.25.22X,則 可輸入 140.134.25.22 作模糊查詢 (2)Hosts: 本功能可查詢 a.顯示全部資料、b.依 IPaddress 查詢 a.顯示全部資料:顯示 DB 中 Hosts 的所有資料,範例如圖 4.6 b.依 IPaddress 查詢:查詢特定的 IPaddress,查詢時利用模糊查 詢,範例如圖 4.7

(42)

圖 4.6 顯示 Hosts 表格中所有資料 圖 4.6 顯示共有 4848 筆資料

(43)

(3)IPtraffic 本功能可查詢 a.顯示全部資料、b.依 IPaddress 查詢 a.顯示全部資料:顯示 DB 中 IPtraffic 的所有資料,範例如圖 4.8 b.依 IPaddress 查詢:查詢特定 IPaddress 屬於 IP 協定的資料, 查詢時利用模糊查詢,範例如圖 4.9 圖 4.8 顯示 IPtraffic 表格中所有資料 圖 4.8 顯示屬於 IP 協定的共有 4896 筆

(44)

圖 4.9 輸入 140.134.25.22 查詢 IPtraffic 表格的結果,為模糊查詢 (4)NonIPtraffic: 本功能可查詢 a.顯示全部資料、b.依 IPaddress 查詢 a.顯示全部資料:顯示 DB 中 NonIPtraffic 的所有資料,範例如圖 4.10 b.依 IPaddress 查詢:查詢特定 IPaddress 不屬於 IP 協定的資料, 查詢時利用模糊查詢,範例如圖 4.11 圖 4.10 顯示 NonIPtraffic 表格中所有資料 圖 4.10 顯示不屬於 IP 協定的共有 4896 筆

(45)

圖 4.11 輸入 140.134.25.22 查詢 NonIPtraffic 表格的結果,為模糊查詢 (5)TCPsessions: 本功能可查詢 a.依輸入資料作查詢 a.依輸入資料作查詢:查詢特定 IPaddress 的資料,查詢時利用模 糊查詢,範例如圖 4.12

輸入選項:選查詢 Client 或 Server --> 輸入 IPaddress --> 選擇查 詢何種資料 --> 選擇查詢的時間 --> 按”查詢” --> 顯示結果(可 在查詢結果下方得知輸入的資料)

(46)

圖 4.12 查詢 Server 為 140.134.25.22 其 FTP 在 2002-10-01 的連線資料 (6)TOP 10: 本功能可查詢 FTP、HTTP、Telnet、POP3、SMTP、Proxy、Socket、 Others、以上協定所佔的連線資料量的比例。 可利用超連結來做更詳細的查詢: 以查詢 Server 為 140.134.25.22 在 2002-10-01 這一天的 FTP 連線 資料為例,由圖 4.14(各協定所佔的連線資料量的比例)來做進一步 的查詢。 STEP1:點選視窗左方”TOP 10”在圖 4.13 輸入查詢 2002-10-01 的資料,按查詢。 STEP2:出現圖 4.14,點選”通訊協定”欄位中的 FTP 跳至圖 4.15 顯示 FTP 的 TOP 10 STEP3:點選”Server”欄位中的 140.134.25.22 跳至圖 4.16, 顯示 Server 為 140.134.25.22 在 2002-10-01 這一天 的 FTP 連線資料

(47)

圖 4.13 輸入欲查詢資料

(48)

圖 4.15 FTP 的 TOP 10

(49)

圖 4.17 HTTP 的 TOP 10 (7)RRD Tools: 本功能為以圖形化顯示連線資料 1、橫軸以時間為單位:時間單位可自行設定,本系統中單位 為 a.時、b.天、c.月 2、縱軸因顯示資料不同,單位也有所不同 3、在圖形下方顯示個別資料的平均值、最大值、最小值 圖 4.18~4.20 為橫軸以小時當單位

(50)

圖 4.18 RRD1,下接圖 5-19(FTP、HTTP、X11、Email、NetBIOS、SNMP、NFS)

圖 4.18 縱軸以 1e(10 的冪次方)byte 為單位。ex: 1e+02 = 10^2,

圖 4.19 RRD2,延續圖 4.18,(Multicast、Broadcast、Unicast、TCP、UDP、ICMP) 圖 4.19 縱軸以 byte 當單位

(51)

圖 4.20 RRD3,延續圖 4.19(Attemped、Established、Reset、Rejected、Invalid Flags) 圖 4.20 縱軸以 Packet 當單位

(8)病毒監控:

本功能可偵測 Nimda、CodeRed 的攻擊時間

(52)

圖 4.22 Nimda 攻擊時間 4.3 本系統的優缺點 優點: (1) 介面簡單易懂: 由於 NTOP 自動產生的網頁對於沒學過網路的人並不易 懂,且其顯示的資料在做流量監控時並非都有需要,所以在將 資料導入資料庫後可自行利用 PHP 等程式做一簡易的管理介 面。 (2) 彈性大: 因為管理介面不是用 NTOP 自動產生的網頁,隨時可以根 據需要自行用 PHP 等可存取 MySQL Database 網頁編輯程式, 產生所需要的 Web 管理介面。 缺點: (1)無法知道封包內容: NTOP 只能分析封包的大小及協定無法得知封包內容為何。 4.4 系統未來發展 由於 NTOP 只能分析某一筆連線的協定及大小但無法知道封包內 容,因此未來發展目標為 1. 進一步結合可分析封包內容的技術 2. 由於網管人員無法隨時守在電腦前,可發展當有異常現象時 自動發簡訊到網管人員的手機的技術,以減輕網管人員的負 擔

(53)

第 五 章 專 題 心 得

5.1 專題實作歷程 因為學校課程的安排大三比大二的課更重,所以專題就打算從大 一暑假開始做;當時因為李維聰老師有講過在學校資訊處遠距主播教 室有工讀機會並且還可以邊做專題,因此就找了三位同學,請老師介 紹進入遠距主播教室實習。 在邊學習如何操作儀器、兩地同步傳輸、ISDN 連線、逢甲電視台 播放,也跟著學長姐觀摩他(她們)所做的專題。我們時常上網和看 雜誌,觀摩別人如何做遠距教學;但是經過二上,儀器都操作熟練, 發覺沒有在遠距教學方面有個好的 idea,而且多學了幾門課,四個人 的想法改變。所以就拆夥,各自找自己想做的領域。 在二下快結束時,有一次跟李維聰老師談,發覺對 VOIP 有興趣, 於是由研究所的學姊指導我們,從大二升大三的暑假開始;學 VB 和補 充網路有關的知識。到了八月中旬,老師和學姊要我們自己決定想要 做哪一方面,我們選擇的是”網頁電話”。但是由於資料蠻少的,只 有中華電信開始 RUN 而已,所以學姊要我們換題目,但是其他三組已 經決定題目,而我們也想不到要做什麼。後來老師成為學校網路組組 長,想要做網管方面的東西,就讓我們寫寫看。 於是我們就從升大三的暑假九月初開始,學習 LINUX 以及清華天 王學長每個禮拜二的 LINUX 教學,開始確立目標,朝著寫網管方面的 軟體邁進。 因為要用 linux 實作,但是有很多 linux 的版本,因為網路上蠻 多 RedHat 討論,而且基本常識的書也有出。所以就選定為我們實作的 版本,起先發覺 RedHat7.1 不穩,所以改灌 RedHat7.0。由於 RedHat7.0 還沒支援一些的網路卡,所以只得用螃蟹卡。後來在大三下出來 RedHat7.2 支援 D-Link530TX,所以就把系統換成 RedHat7.2。 剛開始練習寫個程式抓系統的時間,用 c 寫要很長,後來發覺可 用 perl 提供 IO::Socket 模組做到。但是在家 run perl 程式無法抓到 knight(逢甲的 SUN 主機)的主機時間,在 knight 主機 run perl 程式 就可以抓到;我們想原因可能在於被類似防火牆的東西給擋掉了~除非 和 knight 同在 140.134.XX.XX 的網域才能抓到 knight 的時間。 後來為了抓流量,所以我們裝了 mrtg,設定方式大概如下: 1.安裝 mrtg 相關元件。 2.使用 cfgmaker 收集組態檔(並更改其中路徑)。 3.使用 mrtg 產生流量圖。

(54)

4.使用 indexmaker 產生流量圖。 按步驟下去就不會有 error 了。 並且寫了一個的程式用來抓所產生的流進流出的數值,並且用 16 ×16 的正方體來表現 256 個 subnet 的狀況,分成紅、藍、綠三種程度。 但是後來發覺學校每個系不是都分配一個 subnet,而且分布也不是很 均勻;所以數據的統計很困難,因此就移到網路實驗室。並且用 ntop 抓封包,把數據導入資料庫(mysql),再利用 php 把資料提出。 但是由於在 ntop 抓封包導入資料庫的過程遲遲無法突破,所以我 們又分兩個人研究如何抓封包,請教過天王學長,他說 raw socket or tcpdump 可以研究,但是蠻多檔案要看。之後 ntop 抓封包再導入資料 庫的過程終於突破,所以就研究如何把資料提出。 接下來就用 php 把所想要的數據秀到網頁上,期間因為要把數據 圖形化而花了不少時間。後來終於能夠把數據圖形化,使人容易看懂; 因此再做些修飾,終於完成了專題。 p.s.期間因為要機器要還給同學,所以又花時間找機器。發覺 linux 有異植性--就是能將硬碟從一 PC 移到另一 PC 而不需要重新灌

O.S.(WINDOWS 系列的 O.S.就不行)但是 RAM 的插槽要一樣規格才行。

5.2 組員個人心得 ◎李育安:

本小組是歷經坎坷,又因某種姻緣機遇才選上此一專題,一開始 本小組是在大二升大三暑假之時,是準備做有關VOIP( voice over IP(internet protocol) )後來聽了一個暑假的VOIP 的相關課程,在 暑假結束之時又因某種關係,決定不做VOIP的東西,後來經”趙啟時” 老師的介紹,認識了NTOP (network on top),”趙啟時老師”要我們 了解這一個網站,和去學Linux系統的,所以那時我才開始接觸Linux 的東西,之前我還都只是一只侷限於windows 的作業系統,一開始接 觸Linux系統時真的很不習慣,雖然大一曾上過Unix的相關課程,不過 還是有點不一樣,光要把Linux 要建在自己的電腦多重開機就花了我 很多的時間,重灌了五十幾次,還花了一很多時間再想如何多重開機, 後來把Linux 系統用好之後,我們也了解了一些NTOP 的相關的知識, 想把NTOP 的東西實際去做一次,但是又遇到了很多的問題,弄不出 來,此時又因某種因素”趙老師”無法親自帶我們,所以又讓”李維

(55)

聰”老師親自來指導,老師要我們去認識MRTG的東西,所以我們又去 認識了MRTG的相關東西和知識,也去學習MRTG的實做,後來也實做成 功,因為”李維聰老師”要我們做好全校個Subnet 的MRTG,且要把全 校之Subnet 做成一個16X16方格圖,並且和全校所有的Subnet 做連 結,方格圖並且要以Mrtg的目前流量的值做參考顯示出顏色,後來本 來組在快要做完之後,又得到一個惡訊,就是本學校的所有Subnet 並 不是一個Subnet 是一個port,而且所有的Subnet 可能共用某個port 也可能用了很多port 也就是說學校的網路錯綜複 雜我們的資料並不正確,因此只好放棄,在此之時我們己經在學校放 了一部可以遠端登入的Linux 主機。後來小弟又在某一種機會之下把 NTOP 程式建立了起來( 可能是學習Linux 己經有點經驗的關係),所 以全部的組員又因此投入了NTOP 程式的研究,後來經過和”李維聰老 師”的討論之後老師希望我們能夠用NTOP 做為基礎來發展並且針測 網路的流量,後來來我又發現了NTOP 可以結合Mysql 資料庫,並且可 以結合RRD tools 來使得NTOP 的功能更加的強大,因此小弟就是看了 有關RRD tools 的想關資料並且trace RRD的Code並且建立了NTOP 的 資料庫在Mysql 裡面。我覺得在做專題的過程裡雖然我們真的很坎 坷,不過無意之中讓我真正的踏入Linux 的世界,真是覺得歡喜萬分, 雖然Linux 我在大一時就己經知道,那時我還買了Linux6.2的書不過 都沒有看過。直到大三才又接觸了Linux的世界,使得我對電腦科學的 東西又了解了一些,我只能說Linux 的世界是一個有趣的世界。 ◎王建智: 先說一下專題製作的心路歷程吧,回想起來做畢業專題的過程受到 許多挫折,本來一開始充滿幹勁的學習 TAPI 準備要做 VoIP 但在學習 基本知識後卻因為選擇的題目連帶我們專題的學姐也沒做過所以只好 改做網路管理,此時已經洩氣一半,又在老師無法親自指導且找不到 學長做指導的情況下只能靠組員自己摸索,此時想說只要能做出來就 好,想不到之後因為用來抓取網路流量的方法錯誤導致失敗需重新做 起,這個時候已經有延畢的覺悟了,幸好在趙啟時老師介紹下利用 NTOP 這套軟體才能在有限時間內完成專題。 我們的專題雖然只是一些軟體的整合應用但在做完後主要的收穫 為學到很多東西,像 Linux 從一開始只聽過名字到現在知道如何安裝、 設定,到能利用它作為專題系統的發展環境;另外一直到做這個專題 才真正學到網頁的設計技巧,自從大一用 World 做過網頁後就不再寫 過網頁,所以是邊做邊學用 HTML 和 PHP 慢慢完成系統的網頁管理介

(56)

面。除了技術性的收穫外,在精神層面也受到了不少的歷練,我受到 最大的打擊是在方法錯誤需重新做起,當時除了有延畢的覺悟也一直 在想連大學的畢業專題都做不出來有實力繼續就讀研究所嗎?幸好最 後專題順利完成心情才慢慢調適過來。遇到挫折、困難時如何調適心 情繼續做下去,以及在專題及學校課業上如何配合以兼顧到雙方,這 些經驗讓我對未來的研究所生活有了覺悟。 ◎程柏綸: 這次的專題真的很高興做完了;回想當初二年級的想法-想要做一 個世上獨一無二的東西出來。可是後來才發現我們還需學習,不可能 一下子就做出來新的東西。 從大三開始每個禮拜跟老師見面,談談最近的進度(有時候還不 敢去見老師,因為進度沒達成)對於網路程式的不了解,使我們備感 艱辛,自己看軟體書還不一定能懂,後來大四上系上開了一門“網路 程式規劃”裡面正是我們大三時自己辛辛苦苦研究的東西,聽學長說 以前系上都是開在三上,我們這一屆才改到四上;真是欲哭無淚。希 望系上以後能改回到三上,使得學弟妹想要走網路方面可以能較早接 觸。 現在根據四上所上的軟體工程,我做了此次的檢討: 我們起先沒有做 spec,因為對所要做的東西只有概念而已。開始 先找一個題目,也就是“遠距教學”,收集遠距教學相關資料和熟練 儀器。但是後來沒有什麼好的點子,組員各自有自己想做的東西,所 以就拆伙。 後來決定“VOIP”再重新找夥伴,收集 VOIP 相關資料和練習 VB; 後來決定做”網頁電話”。但是由於資料蠻少的,只有中華電信開始 RUN 而已,所以學姊要我們換題目,但是其他三組已經決定題目,而我 們也想不到要做什麼。後來老師成為學校網路組組長,想要做網管方 面的東西,就讓我們寫寫看。 於是我們就從升大三的暑假九月初開始,學習 LINUX 以及清華天 王學長每個禮拜二的 LINUX 教學,開始確立目標,朝著寫網管方面的 軟體邁進。 由於對 LINUX 的不熟悉(只在一上時使用過)所以收集 LINUX 相 關資料以及灌軟體都費了很大的功夫;之後為了找一台 Server,也花 一個月的時間;剛開始是用 evolutional 的方法─就是想到什麼就做 什麼,後來才用有優先的增加功能。 這次專題由於是三個人,而且都不住在一起,所以聯絡比較麻煩;

(57)

好在都有共同的課,彼此都能碰到面,而原本是四個人,但是有一位 同學因課業趕不上而退出,還好是專題開始要分工所以比較沒影響, 但覺得很可惜。專題讓我們在課業和專題之間有一次訓練的機會─如 何妥善安排時間並且提前體驗研究生的生活,老師也給予我們協助, 指導我們如何訂進度並且告訴我們碩士和博士是如何訓練。 對於 Linux 我覺得有很大的發展空間,尤其再結合 embedded system,所以我會更加努力,以後朝著這方面邁進。

(58)

第 六 章 參 考 資 料

書籍:

[1]位元文化 編著,PHP4+MySQL4 動態網頁入門實務,文魁資訊股份 有限公司,2002 [2] 吳弘凱、鄧文淵 編著,PHP 4 網頁程式語言 My SQL 資料庫快速入 門,松崗, 2001 [3]鄧文淵、陳惠貞、陳俊榮 編著,e 世代網頁設計-HTML 4.01、 VBScript、ASP 入門,松崗電腦圖書資料股份有限公司,2000 [4] 王成春、周文玲 編著,MySQL 資料庫大進擊,文魁資訊股份有限 公司,2000

網址:

http://www.ntop.org http://httpd.apache.org/ http://www.php.net/ http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ http://www.mysql.com http://www.linux.org http://sourceforge.net/ http://linux.vbird.idv.tw/ http://www.linuxapps.com/ http://mdk.linux.org.tw http://cle.linux.org.tw http://www.study-area.org/menu1.htm http://www.linux.org.tw/ http://www.linuxfab.cx/index.php http://motoweb.chuany.net/ telnet://bbs.sayya.org

(59)

附 錄 A NTOP 資 料 庫 Table 欄 位 詳 細 說 明

TCP:傳輸控制協定(Transmission Control Protocol)。 提供全雙工資料傳輸的連接導向傳輸層協定。

UDP:使用者資料元協定(User Datagram Protocol)。

是一簡單協定,用來交換資料元,而不確認或保證傳送是否成功, 因此需要其他協定來處理錯誤和重傳等。

ICMP:Internet 控制訊息協定(Internet Control Message Protocol)。 網路層Internet 協定,負責錯誤報告及提供IP 封包處理之相關 資訊。

ARP:位址解析協定(Address Resolution Protocol)。 用於對應IP 位址到MAC 位址的Internet 協定。

RARP:反向位址解析協定(Reverse Address Resolution Protocol)。 用於由MAC 位址找尋IP 位址的協定。

IGMP:網際網路群組管理協定(Internet Group Management Protocol)。 IP 主機用以通知相鄰多點廣播路由器。其所屬多點廣播群組成 員。可同時參考多點廣播路由器。

IPX:網路間封包交換(Internetwork Packet Exchange)。 Decnet:Digital Equipment Corporation。

由Digital Equipment 公司開發並支援的通訊系列產品(包含協定 堆疊)。 ATALK:AppleTalk Apple 電腦公司所設計的通訊協定系列。包含兩階段。階段一支 援在單一實體網路只能有一網路編號且只能在一個區域。階段二支援 在單一實體網路上可有多個網路在多個區域間。

OSPF:開放系統最短路徑優先(Open Shortest Path First)。 來自於IS-IS協定,可同時參考IGP 和RIP。

(60)

NetBios:網路基本輸入輸出(Network Basis Input/Output System)。 在IBM LAN 上用來請求下層網路程序服務的應用程式介面。這些 請求包含交談的建立與結束及資料的傳輸。 OSI:開放系統互連架構。 由ISO 和ITU 所創建的一國際性組織標準, 其目的是提供資料網路的標準以促使多廠牌之間的設備得以互相溝 通。

數據

圖 4-2 查詢指定資料系統流程圖
圖 4.4  顯示 NameMapper 表格中所有資料  由圖 4.4 可知共有 9876 筆其 IPaddress 具有相對應的名稱  圖 4.5  輸入 140.134.25.22 查詢 NameMapper 表格的結果  圖 4.5 顯示欲查詢 140.1354.25.223 但卻只記得 140.134.25.22X,則 可輸入 140.134.25.22 作模糊查詢  (2)Hosts:   本功能可查詢 a.顯示全部資料、b.依 IPaddress 查詢  a.顯示全部資料:顯示 DB 中 Ho
圖 4.7  輸入 140.134.25.22 查詢 Hosts 表格的結果,為模糊查詢
圖 4.9  輸入 140.134.25.22 查詢 IPtraffic 表格的結果,為模糊查詢  (4)NonIPtraffic:  本功能可查詢 a.顯示全部資料、b.依 IPaddress 查詢  a.顯示全部資料:顯示 DB 中 NonIPtraffic 的所有資料,範例如圖 4.10   b.依 IPaddress 查詢:查詢特定 IPaddress 不屬於 IP 協定的資料, 查詢時利用模糊查詢,範例如圖 4.11  圖 4.10 顯示 NonIPtraffic 表格中所有資料  圖 4.10
+7

參考文獻

相關文件

數位計算機可用作回授控制系統中的補償器或控制

但三路之中左右兩 路的主要目的是牽 制敵人,中間沿穎 水南下一路才是主 戰力所在。又,前 秦動員規模過於龐 大,在軍事行動展

● 每間學校訂購 myTV SUPER 應用程式版 /網頁版 通行證最 低限額: 50張。.. 1 OTT 網路串流平台

a 全世界各種不同的網路所串連組合而成的網路系統,主要是 為了將這些網路能夠連結起來,然後透過國際間「傳輸通訊 控制協定」(Transmission

 不過以上所提的內容幾乎都會被現在的智慧型手機取 代,因此我們覺得這些功能能夠運用在一個沒有網路

請繪出交流三相感應電動機AC 220V 15HP,額定電流為40安,正逆轉兼Y-△啟動控制電路之主

二、 工作行為與活動:以工作過程、活動、行為來衡量績效,這

小企業的會計雖然水準較缺乏,資訊系統也較不完整,但是絕大多