本文適用於有浮動IP的使用者,例如一般的ADSL用戶應該都有很多組的浮動IP,利用動態 DNS 的對應,讓你可以像具有固定IP一樣的效果,卻不用花半毛錢~
作業系統:Linux 或 FreeBSD均適用
DDNS提供者:
首先請先上 dyndns 網站去申請一組免費的 Domain name
然後安裝 dyndns 的dns client在網頁伺服器上
yum -y install ddclient
安裝完畢後,編輯設定檔如下 vim /etc/ddclient/ddclient.conf
(假設申請的 domain name是 taiwanwolf.dyndns.com)
daemon=600
cache=/tmp/ddclient.cache
pid=/var/run/ddclient.pid
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
login=您申請 dyndns 的登入帳號
password=您申請 dyndns 的登入密碼
protocol=dyndns2
server=members.dyndns.org
mx=taiwanwolf.dyndns.com
wildcard=YES
taiwanwolf.dyndns.com
之後再去 vim /etc/rc.local,加上下面這行把它設成開機啟動
/usr/sbin/ddclient
這樣就每隔600秒就會把你伺服器的IP,跟你的Domain name作同步,之後使用者只要在瀏覽器上打 http://taiwanwolf.dyndns.com 就可以連到你的網站了!
2009年2月26日
2009年2月18日
Linux 環境下,利用Wireshark或Tcpdump擷取封包
在這邊我們利用 Wireshark 跟 Tcpdump 兩種方式來抓封包,觀看問題
法1: 使用 Wireshark的文字版 tshark
語法 tshark -i -f
Ex. 抓預設 eth0 的 80 Port 的封包
# tshark -i eth0 -f "tcp port 80"
Ex. 看 eth1 並標準化時間,然後只抓有關於 203.67.21.33 並儲存在 /tmp/test.pcap ,同時也即時show在螢幕上
# tshark -i eth1 -t ad host 203.67.21.33 -w /tmp/test.cap -S
Ex. 讀取封包
#tshark -r /tmp/test.cap
Ex. 讀取並過濾封包,只要看 sip 號碼是 070123456 的並存檔為 070123456.cap
tshark -r dhcp_0120_1737_1807.cap.gz -R "sip contains 070123456" -w 070123456.cap
此外wireshark有內建許多統計功能,只要使用 -z 選項配合相關的參數使用,例如要看packet summary,只要使用 tshark -z io,stat,1 -q -n -i eth0,然後再搭配shell與RRD等,就可以畫出統計圖表。
法2: 使用 Tcpdump
Ex.抓封包
# tcpdump -i eth0 -w abc.cap
Ex. 抓封包,分割每個儲存的封包(size 1500bytes)
# tcpdump -i eth0 -s 1500 -w a.cap
Ex. 讀封包
# tcpdump -r abc.cap
P.S 大部分抓封包都需切換成 Root 權限才能使用
法1: 使用 Wireshark的文字版 tshark
語法 tshark -i
Ex. 抓預設 eth0 的 80 Port 的封包
# tshark -i eth0 -f "tcp port 80"
Ex. 看 eth1 並標準化時間,然後只抓有關於 203.67.21.33 並儲存在 /tmp/test.pcap ,同時也即時show在螢幕上
# tshark -i eth1 -t ad host 203.67.21.33 -w /tmp/test.cap -S
Ex. 讀取封包
#tshark -r /tmp/test.cap
Ex. 讀取並過濾封包,只要看 sip 號碼是 070123456 的並存檔為 070123456.cap
tshark -r dhcp_0120_1737_1807.cap.gz -R "sip contains 070123456" -w 070123456.cap
此外wireshark有內建許多統計功能,只要使用 -z 選項配合相關的參數使用,例如要看packet summary,只要使用 tshark -z io,stat,1 -q -n -i eth0,然後再搭配shell與RRD等,就可以畫出統計圖表。
法2: 使用 Tcpdump
Ex.抓封包
# tcpdump -i eth0 -w abc.cap
Ex. 抓封包,分割每個儲存的封包(size 1500bytes)
# tcpdump -i eth0 -s 1500 -w a.cap
Ex. 讀封包
# tcpdump -r abc.cap
P.S 大部分抓封包都需切換成 Root 權限才能使用
標籤:
抓封包,
linux 網路分析,
packet filter,
tcpdump,
tshark,
wireshark
2009年2月13日
找出缺少的檔案,在什麼套件中
日前要安裝 C 的Header檔案 stdio.h,可是不知道在什麼套件裡面,於是
就用 yum provides '*/stdio.h',結果發現是在 glibc-headers
再用 yum install glibc-headers,就搞定了~
P.S 以上是 Fedora / CentOS等的用法,Debian跟Ubuntu是 sudo apt-get install libc6-dev
就用 yum provides '*/stdio.h',結果發現是在 glibc-headers
再用 yum install glibc-headers,就搞定了~
P.S 以上是 Fedora / CentOS等的用法,Debian跟Ubuntu是 sudo apt-get install libc6-dev
2009年2月11日
2009年2月3日
一行刪除程式所有的 Process
前幾天裝了 X windows, 所以要遠端用 VNC 連進來用 X11,由於設定的一些問題,所以建了一個設定檔,要自動開啟VNC,並把舊的VNC Session刪除,由於刪除需要用到找出VNC的PID,語法如下
ps aux | grep vnc | grep -v grep | awk '{print $2}'
但是這樣只會列出PID數字,還無法達成一行刪除,問了同事發現有個 xargs的好東西,所以要刪掉某個程式的所有 Process (這裡以VNC為例) 的語法如下
ps aux | grep vnc | grep -v grep | awk '{print $2}' | xargs -L1 kill
這樣就會把前面 stdout 出來的 PID 數字,再倒給 kill 去砍囉~
ps aux | grep vnc | grep -v grep | awk '{print $2}'
但是這樣只會列出PID數字,還無法達成一行刪除,問了同事發現有個 xargs的好東西,所以要刪掉某個程式的所有 Process (這裡以VNC為例) 的語法如下
ps aux | grep vnc | grep -v grep | awk '{print $2}' | xargs -L1 kill
這樣就會把前面 stdout 出來的 PID 數字,再倒給 kill 去砍囉~
2009年2月2日
查看 Linux 系統資訊常用指令
lspci -v => 檢查系統 PCI 介面的各項裝置
lsusb => 檢查系統USB介面的裝置
lsscsi => 檢查系統SCSI介面的裝置
cat /proc/cpuinfo => 顯示CPU的資訊
cat /proc/meminfo => 顯示記憶體的資訊
free => 顯示記憶體的相關資訊
dmidecode => 查看硬體的相關資訊
hdparm -i /dev/hda => 硬碟的各項資訊
dmesg => Linux Kernel 運作過程當中所顯示的各項訊息記錄
uname -a => 顯示Linux系統資訊
cat /proc/version => 查看 Linux 核心
cat /etc/issue => 查看 Linux 系統版本
smartctl -a /dev/sda => 查看硬碟詳細資訊及型號
lsusb => 檢查系統USB介面的裝置
lsscsi => 檢查系統SCSI介面的裝置
cat /proc/cpuinfo => 顯示CPU的資訊
cat /proc/meminfo => 顯示記憶體的資訊
free => 顯示記憶體的相關資訊
dmidecode => 查看硬體的相關資訊
hdparm -i /dev/hda => 硬碟的各項資訊
dmesg => Linux Kernel 運作過程當中所顯示的各項訊息記錄
uname -a => 顯示Linux系統資訊
cat /proc/version => 查看 Linux 核心
cat /etc/issue => 查看 Linux 系統版本
smartctl -a /dev/sda => 查看硬碟詳細資訊及型號
訂閱:
文章 (Atom)