mv initrd.lrp initrd.gz
gunzip initrd.gz
mount -o loop initrd /mnt
cp <module.o> /mnt/boot/lib/modules
e3 /mnt/boot/etc/modules
umount /mnt
gzip initrd
mv initrd.gz initrd.lrp
2010年12月21日 星期二
2010年12月6日 星期一
VirtualBox Guest OS 管理摘要
Linux 中開機自動執行 VirtualBox Guest OS
在 /etc/.rc.local 加入
su - vboxuser -c "VBoxHeadless -s 'vm_name' -v off" &
使用VBoxHeadless 啟動的 Guest OS 無法使用 VirtualBOX程式中的大部份功能,必須使用 VBoxManage controlvm來改變 Guest OS的狀態
1.開啟Guest OS遠端桌面
VBoxManage controlvm vm_name vrdp on vrdpport vm_port
2.關閉Guest OS遠端桌面
VBoxManage controlvm vm_name vrdp off
在 /etc/.rc.local 加入
su - vboxuser -c "VBoxHeadless -s 'vm_name' -v off" &
使用VBoxHeadless 啟動的 Guest OS 無法使用 VirtualBOX程式中的大部份功能,必須使用 VBoxManage controlvm來改變 Guest OS的狀態
1.開啟Guest OS遠端桌面
VBoxManage controlvm vm_name vrdp on vrdpport vm_port
2.關閉Guest OS遠端桌面
VBoxManage controlvm vm_name vrdp off
2010年11月25日 星期四
Linux kernel driver module 編譯摘要-unresolved symbol synchronize_irq
重新編譯好的 kernel driver module,但載入時出現
insmod: unresolved symbol synchronize_irq
原因可能是目前的 kernel 不支援 multi-processing
在不重新編譯kerenl情況下,make menuconfig 作以下設定
Processor type and features --->
[ ] Symmetric multi-processing support <--- 取消支援
insmod: unresolved symbol synchronize_irq
原因可能是目前的 kernel 不支援 multi-processing
在不重新編譯kerenl情況下,make menuconfig 作以下設定
Processor type and features --->
[ ] Symmetric multi-processing support <--- 取消支援
2010年11月24日 星期三
2010年11月18日 星期四
BrazilFW 新增 硬體 module 筆記
BrazilFW 支援的硬體清單不多,但網站亦有提供開發環境下載,方便自行增加硬體驅動程式,以下以 BrazilFW 2.31、Broadcom 4400 網路卡為例
以下執行環境在 Linux x86 32bit
1.下載 BrazilFW 2.31 Build Tree
http://sourceforge.net/projects/brazilfw/files/
2.解開下載檔案及設定開發環境
su - (切換執行身份為 root)
bunzip2 BrazilFW-2.31-Build.bz2
tar xf BrazilFW-2.31-Build
cd brazilfw-2.31-build
./setdevel.sh
3.設定 linux kernel 相關設定
make menuconfig 進入kernel 設定界面,設定選項如下:
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Loadable module support --->
[*] Enable loadable module support
[ ] Set version information on all module symbols
[*] Kernel module loader
Processor type and features --->
[ ] Symmetric multi-processing support
Network device support --->
Ethernet (10 or 100Mbit) --->
<M> Broadcom 4400 ethernet support (EXPERIMENTAL)
4.儲存 kernel 設定,執行以下指令
make clean; make dep; make modules
產生 Broadcom 4400 module 位置如下:
/devel/linux/drivers/net/b44.o
以下執行環境在 Linux x86 32bit
1.下載 BrazilFW 2.31 Build Tree
http://sourceforge.net/projects/brazilfw/files/
2.解開下載檔案及設定開發環境
su - (切換執行身份為 root)
bunzip2 BrazilFW-2.31-Build.bz2
tar xf BrazilFW-2.31-Build
cd brazilfw-2.31-build
./setdevel.sh
3.設定 linux kernel 相關設定
make menuconfig 進入kernel 設定界面,設定選項如下:
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Loadable module support --->
[*] Enable loadable module support
[ ] Set version information on all module symbols
[*] Kernel module loader
Processor type and features --->
[ ] Symmetric multi-processing support
Network device support --->
Ethernet (10 or 100Mbit) --->
<M> Broadcom 4400 ethernet support (EXPERIMENTAL)
4.儲存 kernel 設定,執行以下指令
make clean; make dep; make modules
產生 Broadcom 4400 module 位置如下:
/devel/linux/drivers/net/b44.o
2010年11月15日 星期一
Linksys models SRW2024 Password Recovery
以下適用於 Linksys models SRW2016, SRW2024, SRW2048, SRW224G4, SRW248G4
1.連接序列埠 (38400 baud, 8 data bits, no parity, 1 stop bit, no flow control.)
2.交換器重新開機,在POST 測試中 按下 "ESC" 進入 Start Menu 中
3.選擇 Password Recovery Procedure
4.預設帳號密碼:"admin/<blank>"
1.連接序列埠 (38400 baud, 8 data bits, no parity, 1 stop bit, no flow control.)
2.交換器重新開機,在POST 測試中 按下 "ESC" 進入 Start Menu 中
3.選擇 Password Recovery Procedure
4.預設帳號密碼:"admin/<blank>"
2010年10月27日 星期三
指定 Linux 網路卡連線速度
指定 Linux 網路卡連線速度,除了在載入 module 時以參數指定外,亦可使用以下指令 ifconfig、mii-tool、ethtool。
範例:
ifconfig eth0 media 100baseTX
若出現以下訊息,可以改用 mii-tool,ethtool指令
port: SIOCSIFMAP: Operation not supported
mii-tool -F 100baseTx-FD eth0
ethtool -s eth0 speed 100 duplex full autoneg on
範例:
ifconfig eth0 media 100baseTX
若出現以下訊息,可以改用 mii-tool,ethtool指令
port: SIOCSIFMAP: Operation not supported
mii-tool -F 100baseTx-FD eth0
ethtool -s eth0 speed 100 duplex full autoneg on
2010年10月21日 星期四
Linux 新增 SWAP FILE
建立 swap file 檔案大小為 512M
# dd if=/dev/zero of=/swapfile bs=1024 count=524288
設定 /swapfile 為 swap
# mkswap /swapfile
啟用 /swapfile
# swapon /swapfile
設定下次重新啟動可自行啟用 /swapfile
編輯 /etc/fstab 加入以下設定:
/swapfile swap swap defaults 0 0
相關指令
free -m
# dd if=/dev/zero of=/swapfile bs=1024 count=524288
設定 /swapfile 為 swap
# mkswap /swapfile
啟用 /swapfile
# swapon /swapfile
設定下次重新啟動可自行啟用 /swapfile
編輯 /etc/fstab 加入以下設定:
/swapfile swap swap defaults 0 0
相關指令
free -m
2010年8月18日 星期三
CentOS 5 使用 Winbind 作Windows domain 帳號認證
Windows Domain 環境如下:
AD Domain 為 MIS
AD Realm 為 MIS.XX
AD Controls:10.0.0.1
AD Time Server 在 10.0.0.1
1.利用 AD 做認證設備,必須與 AD上的時間一致
設定 /etc/ntp.conf,加入 server 10.0.0.1
執行以下指令:
ntpdate 10.0.0.1
chkconfig ntpd on
service ntpd start
2. 安裝 samba、samba-common
yum install samba samba-common
3. 設定 winbind 認證方式
#setup
執行 Next
執行 Join Domain 輸入 Administrator 帳號及密碼
4.執行 winbind 服務
chkconfig winbind on
server start winbind
5.帳號輸入方式
MIS\test
MIS.XX\test
相關設定檔
/etc/samba/smb.conf
/etc/krb5.conf
/var/kerberos/krb5kdc/kdc.conf
/etc/nssswitch.conf
其他
1.第一次登入的帳號會出現找不到 home 目錄訊息,必須手動建立個別 home 目錄,系統不會自動產生。
2.winbind 服務沒有執行時,使用 domain 中帳號無法登入。
3.本機帳號不受winbind 服務影響。
AD Domain 為 MIS
AD Realm 為 MIS.XX
AD Controls:10.0.0.1
AD Time Server 在 10.0.0.1
1.利用 AD 做認證設備,必須與 AD上的時間一致
設定 /etc/ntp.conf,加入 server 10.0.0.1
執行以下指令:
ntpdate 10.0.0.1
chkconfig ntpd on
service ntpd start
2. 安裝 samba、samba-common
yum install samba samba-common
3. 設定 winbind 認證方式
#setup
執行 Next
執行 Join Domain 輸入 Administrator 帳號及密碼
4.執行 winbind 服務
chkconfig winbind on
server start winbind
5.帳號輸入方式
MIS\test
MIS.XX\test
相關設定檔
/etc/samba/smb.conf
/etc/krb5.conf
/var/kerberos/krb5kdc/kdc.conf
/etc/nssswitch.conf
其他
1.第一次登入的帳號會出現找不到 home 目錄訊息,必須手動建立個別 home 目錄,系統不會自動產生。
2.winbind 服務沒有執行時,使用 domain 中帳號無法登入。
3.本機帳號不受winbind 服務影響。
2010年7月6日 星期二
CentOS 5 + Virtual BOX 下安裝 OpenVZ
1.下載 http://download.openvz.org/openvz.repo 並將它放置在 /etc/yum.repos.d/
2.匯入 OpenVZ 的金鑰
rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ
3.安裝 OpenVZ 核心
yum install ovzkernel.i386 或 yum install ovzkernel.x86_64
4.檢視 /etc/grub.conf 確定已預設所需的核心
5.編輯 /etc/sysctl.conf 來啟用 OpenVZ 所需的某些核心功能
# 啟用封包轉發及停用代理 arp
net.ipv4.ip_forward = 1
net.ipv4.conf.default.proxy_arp = 0
# 啟用來源路由檢驗
net.ipv4.conf.all.rp_filter = 1
# 啟用 magic-sysrq
kernel.sysrq = 1
# TCP Explict Congestion Notification
# net.ipv4.tcp_ecn = 0
# 停用所有網絡介面送出轉遞
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0
6.修改 /etc/sysconfig/selinux 這個設定檔並將它設定為停用:
SELINUX=disabled
7.重新開機
8.安裝 OpenVZ 的工具程式
yum install vzctl vzquota
9.安裝 OpenVZ 核心開發程式
yum install ovzkernel-devel
10.重新編譯 Virtual BOX
/etc/init.d/vboxdrv setup
2.匯入 OpenVZ 的金鑰
rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ
3.安裝 OpenVZ 核心
yum install ovzkernel.i386 或 yum install ovzkernel.x86_64
4.檢視 /etc/grub.conf 確定已預設所需的核心
5.編輯 /etc/sysctl.conf 來啟用 OpenVZ 所需的某些核心功能
# 啟用封包轉發及停用代理 arp
net.ipv4.ip_forward = 1
net.ipv4.conf.default.proxy_arp = 0
# 啟用來源路由檢驗
net.ipv4.conf.all.rp_filter = 1
# 啟用 magic-sysrq
kernel.sysrq = 1
# TCP Explict Congestion Notification
# net.ipv4.tcp_ecn = 0
# 停用所有網絡介面送出轉遞
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0
6.修改 /etc/sysconfig/selinux 這個設定檔並將它設定為停用:
SELINUX=disabled
7.重新開機
8.安裝 OpenVZ 的工具程式
yum install vzctl vzquota
9.安裝 OpenVZ 核心開發程式
yum install ovzkernel-devel
10.重新編譯 Virtual BOX
/etc/init.d/vboxdrv setup
2010年5月17日 星期一
shc, a generic script compiler
shc, a generic script compiler
可將 shell script 原始碼編碼,避免原始碼外洩。
使用範例:
shc -v -r -T -f myscript
參考資料:
http://www.datsi.fi.upm.es/~frosal/
http://www.datsi.fi.upm.es/~frosal/sources/shc.html
http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.7.tgz
可將 shell script 原始碼編碼,避免原始碼外洩。
使用範例:
shc -v -r -T -f myscript
參考資料:
http://www.datsi.fi.upm.es/~frosal/
http://www.datsi.fi.upm.es/~frosal/sources/shc.html
http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.7.tgz
2010年5月14日 星期五
LEAF VLAN 和 Cisco 3750 交換器建立10 個以上獨立網段的防火牆應用
LEAF 是使用電腦設備作為防火牆的軟體,所能提供的網段數量取決於實體的網路卡界面,但一般電腦設備不管以任何方式增加網路卡,能提供10個以上的網路卡界面的硬體成本所費不低,要提供 20,30 以上的網段更是不容易。
在LEAF 上應用 VLAN 技術,並搭配 Cisco 交換器 VLAN 功能,可以較少的實體網路界面來達成所需。
以下使用 Cisco 3750 交換器及一組網路界面的LEAF,實作兩個網路界面的防火牆架構
線路連接方式:
LEAF-eth0 <--> Cisco 3750-port 24
192.168.6.x <--> Cisco 3750-port 6
192.168.7.x <--> Cisco 3750-port 7
Cisco 3750 交換器設定如下:
interface GigabitWthernet1/0/6 設定如下
switchport access vlan 6
switchport mode access
interface GigabitWthernet1/0/7 設定如下
switchport access vlan 7
switchport mode access
interface GigabitWthernet1/0/24 設定如下
switchport trunk encapsulation dot1q
switchport mode trunk
LEAF 上的設定如下:
1.安裝 VLAN 相關程式 vlan.lrp
2.載入 802.1q模組 (位置 2.4.34/kernel/net/8021q/8021q.o)
3.建立 VLAN 6,VLAN 7,並給定 IP
ip link set eth0 up
vconfig add eth0 6
ip link set eth0.6 up
ip addr add 192.168.6.1/24 dev eth0.6
vconfig add eth0 7
ip link set eth0.7 up
ip addr add 192.168.7.1/24 dev eth0.7
4.其他
1.LEAF 上設定(如SHOREWALL),有關網路界面裝置名稱的使用,使用 eth0.6、eth0.7,勿使用 eth0
2.eth0.6及eth0.7為VLAN 界面,必須透過 Cisco 3750 Port 24(trunk設定支援802.1Q協定) 才能讓封包通過,不能直接連接到一般的HUB。
3./etc/network/interfaces 中,直接使用 eth0.6、eth0.7指定開機時的IP設定,不用使用vconfig建立vlan
在LEAF 上應用 VLAN 技術,並搭配 Cisco 交換器 VLAN 功能,可以較少的實體網路界面來達成所需。
以下使用 Cisco 3750 交換器及一組網路界面的LEAF,實作兩個網路界面的防火牆架構
線路連接方式:
LEAF-eth0 <--> Cisco 3750-port 24
192.168.6.x <--> Cisco 3750-port 6
192.168.7.x <--> Cisco 3750-port 7
Cisco 3750 交換器設定如下:
interface GigabitWthernet1/0/6 設定如下
switchport access vlan 6
switchport mode access
interface GigabitWthernet1/0/7 設定如下
switchport access vlan 7
switchport mode access
interface GigabitWthernet1/0/24 設定如下
switchport trunk encapsulation dot1q
switchport mode trunk
LEAF 上的設定如下:
1.安裝 VLAN 相關程式 vlan.lrp
2.載入 802.1q模組 (位置 2.4.34/kernel/net/8021q/8021q.o)
3.建立 VLAN 6,VLAN 7,並給定 IP
ip link set eth0 up
vconfig add eth0 6
ip link set eth0.6 up
ip addr add 192.168.6.1/24 dev eth0.6
vconfig add eth0 7
ip link set eth0.7 up
ip addr add 192.168.7.1/24 dev eth0.7
4.其他
1.LEAF 上設定(如SHOREWALL),有關網路界面裝置名稱的使用,使用 eth0.6、eth0.7,勿使用 eth0
2.eth0.6及eth0.7為VLAN 界面,必須透過 Cisco 3750 Port 24(trunk設定支援802.1Q協定) 才能讓封包通過,不能直接連接到一般的HUB。
3./etc/network/interfaces 中,直接使用 eth0.6、eth0.7指定開機時的IP設定,不用使用vconfig建立vlan
2010年5月11日 星期二
Hello World.Simple
第一個 Android Simple 程式-Hello World
編輯 C:\simple\HelloWorld\simpleproject\simpleproject 內容如下
main=com.mydomain.HelloWorld.HelloWorld
name=HelloWorld
assets=../assets
source=../src
build=../build
編輯 C:\simple\HelloWorld\src\com\mydomain\HelloWorld\HelloWorld.simple 內容如下
Event HelloWorld.Initialize()
End Event
$Properties
$Source $Form
$Define HelloWorld $As Form
Layout = 1
Layout.Orientation = 1
Title = "HelloWorld"
$Define StatusPanel $As Panel
Layout = 1
Layout.Orientation = 0
BackgroundColor = &HFF444444
Width = -2
$Define ScoreLabel $As Label
BackgroundColor = &HFF444444
FontSize = 16.0
FontTypeface = 3
Text = "HelloWorld"
TextColor = &HFFFFFFFF
$End $Define
$End $Define
$End $Define
$End $Properties
執行以下指令
C:\simple>simplec HelloWorld/simpleproject/project.properties
C:\simple>C:\android-sdk-windows\tools\adb install -r HelloWorld/build/deploy/HelloWorld.apk
執行結果
編輯 C:\simple\HelloWorld\simpleproject\simpleproject 內容如下
main=com.mydomain.HelloWorld.HelloWorld
name=HelloWorld
assets=../assets
source=../src
build=../build
編輯 C:\simple\HelloWorld\src\com\mydomain\HelloWorld\HelloWorld.simple 內容如下
Event HelloWorld.Initialize()
End Event
$Properties
$Source $Form
$Define HelloWorld $As Form
Layout = 1
Layout.Orientation = 1
Title = "HelloWorld"
$Define StatusPanel $As Panel
Layout = 1
Layout.Orientation = 0
BackgroundColor = &HFF444444
Width = -2
$Define ScoreLabel $As Label
BackgroundColor = &HFF444444
FontSize = 16.0
FontTypeface = 3
Text = "HelloWorld"
TextColor = &HFFFFFFFF
$End $Define
$End $Define
$End $Define
$End $Properties
執行以下指令
C:\simple>simplec HelloWorld/simpleproject/project.properties
C:\simple>C:\android-sdk-windows\tools\adb install -r HelloWorld/build/deploy/HelloWorld.apk
執行結果
2010年5月10日 星期一
Android Simple 開發環境建置筆記
一、下載安裝以下軟體
1.Java SDK 1.6 以上版本,安裝目錄 c:\java
2.Android SDK 1.5 以上版本,安裝目錄 C:\android-sdk-windows
3.Ant version 1.7 以上版本,安裝目錄 c:\apache-ant-1.8.0
4.Simple-windows-0.1.1.zip,安裝目錄 c:\simple
二、將目錄 C:\android-sdk-windows\platforms\android-3 更改為 C:\android-sdk-windows\platforms\android-1.5
三、設置環境變數
JAVA_HOME 指向 java 安裝目錄 c:\java
ANDROID_HOME 指向 android sdk 安裝目錄 c:\android-sdk-windows
SIMPLE_HOME 指向 Simple-windows-0.1.1.zip 安裝目錄 c:\simple
PATH 加入 C:\apache-ant-1.8.0\bin
四、在 c:\simple 目錄下執行下列指令產生測試檔案
newsimpleproject com.mydomain.test.Test
simplec Test/simpleproject/project.properties
五、建立 android AVD 及 啟動 android 下的模擬器,模擬器啟動需等待一段時間
六、執行以下指令測試
C:\android-sdk-windows\tools\adb install -r Test/build/deploy/Test.apk
參考資料:
http://code.google.com/p/simple/wiki/HowToBuildTheSimpleCompiler
1.Java SDK 1.6 以上版本,安裝目錄 c:\java
2.Android SDK 1.5 以上版本,安裝目錄 C:\android-sdk-windows
3.Ant version 1.7 以上版本,安裝目錄 c:\apache-ant-1.8.0
4.Simple-windows-0.1.1.zip,安裝目錄 c:\simple
二、將目錄 C:\android-sdk-windows\platforms\android-3 更改為 C:\android-sdk-windows\platforms\android-1.5
三、設置環境變數
JAVA_HOME 指向 java 安裝目錄 c:\java
ANDROID_HOME 指向 android sdk 安裝目錄 c:\android-sdk-windows
SIMPLE_HOME 指向 Simple-windows-0.1.1.zip 安裝目錄 c:\simple
PATH 加入 C:\apache-ant-1.8.0\bin
四、在 c:\simple 目錄下執行下列指令產生測試檔案
newsimpleproject com.mydomain.test.Test
simplec Test/simpleproject/project.properties
五、建立 android AVD 及 啟動 android 下的模擬器,模擬器啟動需等待一段時間
六、執行以下指令測試
C:\android-sdk-windows\tools\adb install -r Test/build/deploy/Test.apk
參考資料:
http://code.google.com/p/simple/wiki/HowToBuildTheSimpleCompiler
2010年4月20日 星期二
Cisco PIX 模擬器 PEMU Windows XP 安裝筆記
1.下載 PEMU (http://www.blindhog.net/pemu-cisco-pix-emulator/)。
2.取得 PIX IOS(若是 pix7xx.bin 必須解壓縮,取得未壓縮的影像檔)。
3.編輯 pemu.ini 內容如下serial=0x12345678
image=pix724 <---- 根據 PIX IOS 檔案名稱修改
key=0x00000000,0x00000000,0x0000000,0x00000000
bios1=mybios_d8000
bios2=bios.bin
bios_checksum=1
4.下載安裝 openvpn (http://openvpn.net/release/openvpn-2.1.1-install.exe)
目的為建立兩個 TAP-Win32 Adapter 網路界面,供模擬器使用。
5.將 兩個 TAP-Win32 Adapter 網路界面更改名稱為 tap0,tap1。
6.執行指令
pemu -net nic,macaddr=00:11:00:00:02:01 -net tap,ifname=tap0 -net nic,macaddr=00:11:00:00:02:02 -net tap,ifname=tap1 -net nic,macaddr=00:11:00:00:02:03 -serial telnet::4444,server
7.telnet 127.0.0.1 4444
其他
1.不適用 Cisco ASA IOS。
2.較舊版本的 IOS 不適用 (ex:pix634)。
3.執行時CPU 負載高,可以搭配使用 BES(Battle Encoder Shirase http://mion.faireal.net/BES/),限制 CPU資源。
2010年3月31日 星期三
Heartbeat HA 設定摘要-以HTTP服務為例
環境說明:
以兩台主機做 HA,當一設備無法提供服務後,另一台自動提供服務
OS: CentOS 5.1
兩部主機 master,slave 及相關 IP 如下
master: 192.168.6.103
slave: 192.168.6.102
服務 ip: 192.168.6.104
ping_ip: 192.168.6.253
提供服務 http
master、slave /etc/hosts 加入下面內容
192.168.6.103 master
192.168.6.102 slave
1.master、slave 安裝 heartbeat
yum install heartbeat
2.master、slave 設定 authkeys
新增 /etc/ha.d/authkeys 內容如下
auth 1
1 sha1 YourSecreKey
改變權限
chmod 600 /etc/ha.d/authkeys
3.master、slave 設定 ha.cf
新增 /etc/ha.d/ha.cf 內容
# File to write other messages
logfile /var/log/ha.log
# Facility to use for syslog()/logger
logfacility local0
# keepalive: how long between heartbeats?
keepalive 2
#deadtime: how long-to-declare-host-dead?
deadtime 30
# Very first dead time (initdead)
initdead 120
# What interfaces to broadcast heartbeats over?
bcast eth0
# What UDP port to use for bcast/ucast communication?
udpport 694
# auto_failback: determines whether a resource will
# automatically fail back to its "primary" node, or remain
# on whatever node is serving it until that node fails, or
# an administrator intervenes.
#
# The possible values for auto_failback are:
# on - enable automatic failbacks
# off - disable automatic failbacks
# legacy - enable automatic failbacks in systems
# where all nodes do not yet support
# the auto_failback option.
auto_failback on
# Tell what machines are in the cluster
# node nodename ... -- must match uname -n
node master
node slave
# Treats IP as a psuedo-cluster-member
# Used together with ipfail below...
# note: don't use a cluster node as ping node
ping 192.168.6.253
# Processes started and stopped with heartbeat. Restarted unless
# they exit with rc=100
respawn hacluster /usr/lib/heartbeat/ipfail
# Access control for client api
# default is no access
apiauth ipfail gid=haclient uid=hacluster
4.master、slave 設定 haresources
新增 /etc/ha.d/haresources 內容
# HA 的主要電腦的 hostname 虛擬介面 IP 服務名稱
server1 192.168.6.104 httpd
其他說明
1.當master 上線時,master ping ping_ip 可以回應,但 master 上 httpd 因故發生無法服務的狀態時,httpd 服務並不會自動轉移至 slave。
2.防火牆相關設定: udp/694
以兩台主機做 HA,當一設備無法提供服務後,另一台自動提供服務
OS: CentOS 5.1
兩部主機 master,slave 及相關 IP 如下
master: 192.168.6.103
slave: 192.168.6.102
服務 ip: 192.168.6.104
ping_ip: 192.168.6.253
提供服務 http
master、slave /etc/hosts 加入下面內容
192.168.6.103 master
192.168.6.102 slave
1.master、slave 安裝 heartbeat
yum install heartbeat
2.master、slave 設定 authkeys
新增 /etc/ha.d/authkeys 內容如下
auth 1
1 sha1 YourSecreKey
改變權限
chmod 600 /etc/ha.d/authkeys
3.master、slave 設定 ha.cf
新增 /etc/ha.d/ha.cf 內容
# File to write other messages
logfile /var/log/ha.log
# Facility to use for syslog()/logger
logfacility local0
# keepalive: how long between heartbeats?
keepalive 2
#deadtime: how long-to-declare-host-dead?
deadtime 30
# Very first dead time (initdead)
initdead 120
# What interfaces to broadcast heartbeats over?
bcast eth0
# What UDP port to use for bcast/ucast communication?
udpport 694
# auto_failback: determines whether a resource will
# automatically fail back to its "primary" node, or remain
# on whatever node is serving it until that node fails, or
# an administrator intervenes.
#
# The possible values for auto_failback are:
# on - enable automatic failbacks
# off - disable automatic failbacks
# legacy - enable automatic failbacks in systems
# where all nodes do not yet support
# the auto_failback option.
auto_failback on
# Tell what machines are in the cluster
# node nodename ... -- must match uname -n
node master
node slave
# Treats IP as a psuedo-cluster-member
# Used together with ipfail below...
# note: don't use a cluster node as ping node
ping 192.168.6.253
# Processes started and stopped with heartbeat. Restarted unless
# they exit with rc=100
respawn hacluster /usr/lib/heartbeat/ipfail
# Access control for client api
# default is no access
apiauth ipfail gid=haclient uid=hacluster
4.master、slave 設定 haresources
新增 /etc/ha.d/haresources 內容
# HA 的主要電腦的 hostname 虛擬介面 IP 服務名稱
server1 192.168.6.104 httpd
其他說明
1.當master 上線時,master ping ping_ip 可以回應,但 master 上 httpd 因故發生無法服務的狀態時,httpd 服務並不會自動轉移至 slave。
2.防火牆相關設定: udp/694
2010年3月15日 星期一
Running LEAF over a serial link
1.修改/etc/inittab 加入下面內容
ttyS0::respawn:/sbin/getty -L ttyS0 19200 vt100
ttyS1::respawn:/sbin/getty -L ttyS1 19200 vt100
2.修改 syslinux.cfg 修改 append 加入下面內容
append=... console=tty0 console=ttyS0,19200n8
3.重新開機
ttyS0::respawn:/sbin/getty -L ttyS0 19200 vt100
ttyS1::respawn:/sbin/getty -L ttyS1 19200 vt100
2.修改 syslinux.cfg 修改 append 加入下面內容
append=... console=tty0 console=ttyS0,19200n8
3.重新開機
Netstat-nat 摘要
Netstat-nat 摘要
1.執行環境 Linux Kernel > 2.4.x
2.顯示 netfilter/iptables 管理的 NAT 連線資訊。
3.主要讀取 /proc/net/ip_conntrack 內容。
參數說明
狀態說明
參考
http://tweegy.nl/projects/netstat-nat/
1.執行環境 Linux Kernel > 2.4.x
2.顯示 netfilter/iptables 管理的 NAT 連線資訊。
3.主要讀取 /proc/net/ip_conntrack 內容。
參數說明
-h | displays help |
-n | don't resolve IPs/ports to host/portnames. |
-p 'protocol' (tcp udp icmp raw) | display NAT connections with protocol selection. |
-s 'source host' | display connections by source IP/hostname. |
-d 'destination host' | display connections by destination IP/hostname. |
-S | display SNAT connections |
-D | display DNAT connections |
-L | display only connections to NAT box self (disables display of SNAT & DNAT) |
-R | display only connections routed through the NAT box (doesn't show SNAT & DNAT) |
-x | extended view of hostnames |
-r src dst src-port dst-port state | sort connections |
-o | strip output-header |
-N | display NAT box connection information (IP and port) for NATing iface (only valid with SNAT & DNAT) |
-v | version |
狀態說明
ASSURED | 連線已沒有流量 |
CLOSE | 關閉連線 |
ESTABLISHED | 已經建立連線且正在使用中 |
FIN_WAIT | 已經關閉的連線 |
SYN_RECV | 觀察連線等待 TCP SYN 封包 |
SYN_SENT | 觀察連線發送 TCP SYN 封包 |
TIME_WAIT | 類似 CLOSE_WAIT,但本質上比較像逾時(time out) |
UNREPLIED | 連線還沒有收到任何回應 |
參考
http://tweegy.nl/projects/netstat-nat/
2010年3月10日 星期三
Cisco ASA 5550 LAN-Based Active/Standby Failover設定筆記
連接方式
Primary GigabitEthernet0/0 <----> Secondary GigabitEthernet0/0
Primary GigabitEthernet0/1 <----> Secondary GigabitEthernet0/1
Primary GigabitEthernet0/2 <----> Secondary GigabitEthernet0/2
Primary GigabitEthernet0/3 <----> Secondary GigabitEthernet0/3
Primary GigabitEthernet0/4 <----> Secondary GigabitEthernet0/4
Primary 的設定
需要 Failover 界面的設定如下
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 192.168.6.100 255.255.255.0 standby 192.168.6.101
!
interface GigabitEthernet0/1
nameif inside
security-level 50
ip address 192.168.9.253 255.255.255.0 standby 192.168.9.252
!
interface GigabitEthernet0/2
no shutdown
!
interface GigabitEthernet0/3
no shutdown
filover功能的相關設定
failover lan unit primary
//設定 failove link
failover lan interface failover GigabitEthernet0/3
failover interface ip failover 10.1.0.1 255.255.255.0 standby 10.1.0.2
//設定 failove state
failover link state GigabitEthernet0/2
failover interface ip state 10.0.0.1 255.0.0.0 standby 10.0.0.2
failover
copy running-config startup-config
Secondary的設定
failover lan interface failover gigabitether0/3
failover interface ip failover 10.1.0.1 255.255.255.0 standby 10.1.0.2
interface gigabitEthernet 0/3
no shutdown
exit
failover lan unit secondary
failover
copy running-config startup-config
相關指令
show failover
show failover state
show failover interface
show monitor-interface
Primary GigabitEthernet0/0 <----> Secondary GigabitEthernet0/0
Primary GigabitEthernet0/1 <----> Secondary GigabitEthernet0/1
Primary GigabitEthernet0/2 <----> Secondary GigabitEthernet0/2
Primary GigabitEthernet0/3 <----> Secondary GigabitEthernet0/3
Primary GigabitEthernet0/4 <----> Secondary GigabitEthernet0/4
Primary 的設定
需要 Failover 界面的設定如下
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 192.168.6.100 255.255.255.0 standby 192.168.6.101
!
interface GigabitEthernet0/1
nameif inside
security-level 50
ip address 192.168.9.253 255.255.255.0 standby 192.168.9.252
!
interface GigabitEthernet0/2
no shutdown
!
interface GigabitEthernet0/3
no shutdown
filover功能的相關設定
failover lan unit primary
//設定 failove link
failover lan interface failover GigabitEthernet0/3
failover interface ip failover 10.1.0.1 255.255.255.0 standby 10.1.0.2
//設定 failove state
failover link state GigabitEthernet0/2
failover interface ip state 10.0.0.1 255.0.0.0 standby 10.0.0.2
failover
copy running-config startup-config
Secondary的設定
failover lan interface failover gigabitether0/3
failover interface ip failover 10.1.0.1 255.255.255.0 standby 10.1.0.2
interface gigabitEthernet 0/3
no shutdown
exit
failover lan unit secondary
failover
copy running-config startup-config
相關指令
show failover
show failover state
show failover interface
show monitor-interface
CISCO EtherChannel 設定筆記
硬體連結方式
Cisco 3750G gigabitether1/0/1<--->Cisco 2960G gigabitether0/1
Cisco 3750G gigabitether1/0/2<--->Cisco 2960G gigabitether0/2
Cisco 3750G 的設定
interface gigabitether1/0/1
channel-group 1 mode on
interface gigabitether1/0/2
channel-group 1 mode on
Cisco 2690G 的設定
interface gigabitether0/1
channel-group 1 mode on
interface gigabitether0/2
channel-group 1 mode on
其他說明
執行 channel-group 後會建立 Port-Channel interface
取消 PortChannel interface 執行 no interface Port-Channel
相關檢查指令
show interface port-channel
show etherchannel
show spanning-tree
Cisco 3750G gigabitether1/0/1<--->Cisco 2960G gigabitether0/1
Cisco 3750G gigabitether1/0/2<--->Cisco 2960G gigabitether0/2
Cisco 3750G 的設定
interface gigabitether1/0/1
channel-group 1 mode on
interface gigabitether1/0/2
channel-group 1 mode on
Cisco 2690G 的設定
interface gigabitether0/1
channel-group 1 mode on
interface gigabitether0/2
channel-group 1 mode on
其他說明
執行 channel-group 後會建立 Port-Channel interface
取消 PortChannel interface 執行 no interface Port-Channel
相關檢查指令
show interface port-channel
show etherchannel
show spanning-tree
Cisco IOS 命名規則
分析IOS的命名規則,可拆解成AAAAA-BBBB-CC-DDDD.EE五大部分。
AAAAA 代碼的意義:適用於何種設備的IOS
BBBB 相關代碼的功能意義
CC 相關代碼的功能意義
第一個 "C" 說明IOS的檔案的在路由器中以何種方式運行。
第二個 "C" 說明IOS的檔案以何種方式壓縮。
DDDD 代碼的意義:IOS的版本
EE 代碼的意義:此版本IOS的第幾個維護版本。
AAAAA 代碼的意義:適用於何種設備的IOS
BBBB 相關代碼的功能意義
a | Advanced Peer-to-Peer Networking(APPN) |
j | 企業版 |
i | IP |
ipbase | IP BASE |
i3 | 簡化過的ISO,没有BGP、EBP、NHRP |
i5 | 具有VoFR的IP |
k8 | IPSec 56 |
k9 | IPSec 3DES |
o | IOS防火牆 |
o3 | 具有IDS、SSH功能的防火牆 |
s | 具有(NAT、IBM、VPDN、VoIP) |
v | VIP |
v5 | VoIP |
x3 | 語音功能 |
CC 相關代碼的功能意義
第一個 "C" 說明IOS的檔案的在路由器中以何種方式運行。
f | flash |
m | RAM |
r | ROM |
第二個 "C" 說明IOS的檔案以何種方式壓縮。
z | zip壓縮 |
x | mzip壓縮 |
w | stac壓縮 |
DDDD 代碼的意義:IOS的版本
EE 代碼的意義:此版本IOS的第幾個維護版本。
2010年2月26日 星期五
2010年1月4日 星期一
Linux RAM Disk 使用摘要
建立 RAM Disk
mke2fs /dev/ram0
掛載 RAM Disk
mount /dev/ram0
kernel 中支援 ramdisk 選項
CONFIG_BLK_DEV_RAM
更改預設的 ramdisk 空間大小
/etc/lilo.conf 中
RamDisk size=10000 (單位為K)
使用 module 支援 ramdisk
/etc/conf.module 中
options rd_size=10000 (單位為K)
手動載入
insmod brd rd_size=10000 (單位為K)
訂閱:
文章 (Atom)