bind的ddns策略

bind從8.1.2開始支援RFC2136,也就是俗稱的ddns功能.
但是要動態修改,目前只能依靠nsupdate指令.

一般的ddns策略為:
1. 提供web介面申請帳號密碼以及對應的主機名稱
2. 使用者透過程式,若偵測ip更動,自動跟web server聯繫,提供新的ip.
現在一般ip分享器提供數個熱門ddns廠商,應該很方便使用.

若有自己的domain需要提供給大家申請,有兩種作法:
1. 跟ddns提供商申請(當然要給錢)
2. 自製ddns服務

自製ddns也不會很複雜
安裝bind之後,自己寫一個socket server.
client固定時間連線到socket server將申請的主機名稱傳送過去,
socket server收到連線後,會立即知道對方ip,
接下來做些簡單的帳號認證,
做完認證之後,server將對方ip,主機名稱與原來的做比對,若不一樣,
就執行nsupdate指令,修改ddns.

跨平台可單機執行的檔案型資料庫

因為工作需要寫windows application, 初期使用java(netbean) + SQLite(3.6.x) 的方式進行
沒想到sqlite 的insert效率奇差無比, 只好選擇別種資料庫.
改用 h2(1.1.x) , insert的效率變好了,但是select的效率變得很差.
再改用 hsql(2.0) , 各方面的效率都變快,真是太棒了.

windows application

因為工作需要, 必須寫單機版的windows application.而windows application最容易使用的工具就是VB6, 就算vb6已經10年了,他一樣能在各windows 版本下執行呢.

 

很可惜,程式被要求至少能在windows, linux 與新版mac os上執行, 最頭痛的是要能支援usb.原本找了 real basic 該軟體採用basic語法,相容大部分vb,也號稱個別編譯後,能在三種平台執行,但還是不能支援usb存取.

 

與其這樣,還不如使用java, 至少java曾提出usb 規範(jsr-080), 有機會未來各平台都可以直接存取usb裝置.但那是未來,現在不能呀, 現今要能達成有兩個方法:

 

1. 自己寫java native code.

 

2. usb連線部分用os depend的方式寫, 其餘用java寫.

 

後來我選擇第二項,畢竟usb的native code我不是專長.

 

附圖是軟體架構圖:

 

esxi 3.5 u3 相關Q&A

響應電腦機房節能減碳, 大家紛紛使用虛擬化技術達到多個系統在同一台硬體上執行的目的, 虛擬技術現今已經非常成熟, 相信未來是個潮流, 能更方便上手; 這是我測試vmware的esxi 虛擬技術所得到的一些Q&A, 當然幾乎都是從各大高手獲取且所有Q&A皆親自驗證.

Q: esxi需要錢嗎?
A: 免費,請到www.vmware.com找到esxi連結,然後註冊取得免費序號

Q:安裝esxi, 若出現cpu id limit的問題
A:除了查看bios之外, 安裝時, 可以按”tab” 鍵, 找出 vmkernel.gz 在後面加上 nocheckCPUIDLimit

Q: 安裝完畢之後, 開機的時候一樣出現cpu id limit的問題
A: 開機時, 請選擇 alt+O (大寫歐) , 然後在底下加上 nocheckCPUIDIlimt即可

Q: 如何開啟ssh功能
A: 開機時, 按alt-F1 , 然後輸入unsupported (不會顯示出來), 之後會問你root密碼,
進入修改 /etc/inetd.conf, 將ssh 前的”#”拿掉重開機即可

Q: 如何將不同版本的vmdk轉成esxi版本(例如ghost 14)
A: ssh登入esxi server, 然後執行
/sbin/vmkfstools -i 原本的.vmdk /vmfs/volumes/vmfsvolume/esxi專用的.vmdk

Q: 如何將vmdk掛上esxi
A: 新增一個virtual machine , 然後選custom, 最後在disk段選擇已存在的vmdk, 就可以了

Q: 如何將實體作業系統轉成esxi3.5
A: 安裝 vmware converter就好了

Q:將 VMware ESXi Server 3.5 安裝到 USB 隨身碟
A:
使用 WinRAR 解開安裝光碟 “INSTALLusrlibvmware” 下的 “installerVMware-VMvisor-big-3.5.0_Update_2-103909.i386.dd.bz2〃,會得到 “installerVMware-VMvisor-big-3.5.0_Update_2-103909.i386.dd” 這個檔案。
安裝並執行 WinImage 8.1。
執行 WinImage 主選單的 “Disk” -> “Restore Virtual Hard Disk image on physical drive…”。
選取你的 USB 隨身碟 (容量應該要有 1GB,並且隨身碟的所有資料會被清掉)。
選取 “installerVMware-VMvisor-big-3.5.0_Update_2-103909.i386.dd” 這個檔案。
按 Y 後即會還原 VMware ESXi Server 的系統到隨身碟。
結束之後,你就可以帶著做好的隨身碟到伺服器當開機碟使用了。

Q: 安裝esxi之後要設定系統時間
A:
從 VMware Infrastructure Client 登入 VMware ESXi Server。
從伺服器主畫面的 「Configuration」->「Time Configuration」。
將「time.stdtime.gov.tw」加入 NTP Settings,並啟動 NTP Service

Q: 不能安裝xp 與 2000
A: 要到這裡下載driver,然後安裝的時候mapping floppy driver,按F6選該driver
http://www.vmware.com/download/server/drivers_tools.html

Q: 如何使用下文字命令開啟已關機的虛擬作業系統
A: 1. 查詢guestOS的vimid
vim-cmd /vmsvc/getallvms
2. 啟動該vm
vim-cmd /vmsvc/power.on [vimid]
3. 其他vm command 請執行 vim-cmd /vmsvc 即可知道

DKIM介紹

DKIM(DomainKeys Identified Mail)是一種用來對抗釣魚之類廣告信的協定.

當初yahoo以及cisco為了對抗廣告信(至少不讓廣告商冒用其名義寄信),使用一種特殊的方式對抗廣告信,
實施了多年以後,終於證明可以有效阻擋廣告信,因此他們將此協定開放讓大家使用,
到了2005年,在多家廠商的合作下,規範出第一版DKIM,送交IETF審查.
,並且在2007年通過,成為開放通訊協定中的一種,RFC編號為4871.

DKIM的運作方式有兩種, 第一種是驗證(verification),第二種是簽名(signature).
假設我是test.com這個網域的管理員, 我必須利用DNS設定一組公開金鑰,
讓所有人可以取得且用來驗證郵件是否為test.com郵件伺服器發出.
這樣以後所有從test.com郵件伺服器所送出的郵件,只要經過簽名(必須使用私密金鑰才可以簽名),
對方就可以使用公開金鑰認證,確保郵件是否為真.

若所有的郵件伺服器都有這樣的機制, 那些廣告信就無所遁形, 因為他們無法經由簽名預告郵件是否為真
.若廣告商要破解這種機制是需要很大的成本,就目前來說, 是很有效的檔廣告機制.

目前實做的DKIM的模組,對於所定義的公開金鑰與私密金鑰,
還只限於郵件伺服器本身對外發出(非公信力單位發出),
現已有 RFC5016(DKIM Signing Practices Protocol)討論所謂的SPP,
未來很可能形成另一種具備安全性與公信力的通訊協定,讓DKIM更能普及.

若遭遇大量廣告郵件攻擊郵件伺服器,在伺服器還沒進行DKIM驗證的動作時,
可以搭配其他輔助套件,先行阻擋廣告商郵件寄送,
才不至於造成郵件伺服器負載過高甚而停止運作.

特別一提的是目前DKIM並不能證明郵件真的是發信者本人發出,
必須搭配第三者簽名的方式如PGP等單位才是正確方式,

參考文件
http://www.dkim.org/index.html

william 2008/09/16

1 ... 56 57 58