昨天有個朋友諮詢我同構System Copy的問題,由於他也擔心System Copy之後外部系統連接的問題,我給他附贈了一個我的小技巧,現在我把這個技巧記錄下來,供大家參考。
SAP System Copy最需要擔心的一個問題就是系統Copy過來之後,由於SAP與外部系統之間可能有接口實時連通,這個時候,Copy出來的系統一旦起來,則有可能把測試環境的數據給推送到正式的外部系統,引起系統混亂。當然 很多朋友都有自己的辦法去避免這種問題的出現,無論是通過修改後臺進程數量,限制後臺作業起來也好,還是直接修改RFC的表使RFC失效也罷,都是可選的方案。
就我個人的而言,現目前常用的一種方法則是:反用路由表,來實現物理隔離,使得copy出來的測試環境跟其他任何未知機器的網絡都是不通的,則可以最大限度的防止數據混亂的可能。
此種方法的原理爲:
降系統默認的路由全部刪除,只添加指定需要連接的機器的靜態路由,則其他機器由於沒有路由就無法與COPY出的測試環境進行互通,待COPY出來的系統處理好之後,再予以開放就可以最大限度的進行控制。通過這種方法,我們還可以限制測試人員必須通過Router才能進行服務器連接,確保測試環境的獨立性。
實施命令步驟爲(以AIX爲例,其他平臺命令有些許區別,方法通用):
netstat –rn 查看路由表:
netstat -rn
Routing tables
Destination Gateway Flags Refs Use If Exp Groups
Route Tree for Protocol Family 2 (Internet):
default 192.168.0.254 UG 6 674895 en0 – –
127/8 127.0.0.1 U 23 2082398 lo0 – –
192.168.0.0 192.168.0.173 UHSb 0 0 en0 – – =>
192.168.0/24 192.168.0.173 U 10 366972 en0 – –
192.168.0.173 127.0.0.1 UGHS 62 580005983 lo0 – –
192.168.0.255 192.168.0.173 UHSb 0 4 en0 – –
Route Tree for Protocol Family 24 (Internet v6):
::1%1 ::1%1 UH 1 101761 lo0 – –
使用route add和delete修改路由表:
route add -host 192.168.0.202 192.168.0.254 —-添加管理機器的IP(這個IP可以是中轉服務器,也可以是自己的筆記本,不添加的話,後面自己也遠程不了了)
route delete -host default 192.168.0.254 —- 刪除全局默認的路由
route delete -host 192.168.0.0 192.168.0.205 —-刪除同網段的默認路由
route delete -host 192.168.0/24 192.168.0.205 —刪除同網段的默認路由
確認修改後的路由表:
hostname//netstat -rn
Routing tables
Destination Gateway Flags Refs Use If Exp Groups
Route Tree for Protocol Family 2 (Internet):
127/8 127.0.0.1 U 23 2082398 lo0 –
192.168.0.202 192.168.0.254 UGH 0 7 en0 – —我們手動添加的路由
192.168.0.173 127.0.0.1 UGHS 62 580005983 lo0 – –
192.168.0.255 192.168.0.173 UHSb 0 4 en0 – –
Route Tree for Protocol Family 24 (Internet v6):
::1%1 ::1%1 UH 1 101761 lo0
確認網絡隔離成功,除202之外的其他服務器,ping是直接報無法訪問的:
0821-069 ping: sendto: Cannot reach the destination network.
ping: wrote 192.168.0.2 64 chars, ret=-1
0821-069 ping: sendto: Cannot reach the destination network.
ping: wrote 192.168.0.2 64 chars, ret=-1
^C
— 192.168.0.2 ping statistics —
2 packets transmitted, 0 packets received, 100% packet loss
模擬問答:
問題1:這種方法看起來跟防火牆差不多,用防火牆是否可以實現?
答:理論上用防火牆也可以實現,不過默認防火牆一般是防止外部訪問自己,對出站的連接是不做防護的,所以對於防止數據錯亂來講,需要手動添加防止出站的策略,相比較而言,路由表更簡單,更徹底。
問題2:此方法跟網管配置交換機做vlan,做隔離有何區別,爲啥不用交換機實現?
答:通過網管來配置交換機,劃vlan等等當然可以實現物理隔離,很多大公司搭建災備環境的時候就需要通過網管搭建一套一模一樣的隔離環境,這個技術上沒有任何問題,但是對於BASIS來講,如果要配置交換機來實現,需要尋求網管的幫助,有溝通成本,時效性也難以保證,難以把控。而通過路由表自行控制則一切是自己說了算,非常方便靈活。
問題3:你是怎麼想到這個方法的?
答:路由表這個東西非常的常用,很多人都知道,但是一般情況下都是添加路由表,實現雙線訪問或者VPN,外網同時在線等功能,我個人第一次使用靜態路由表也是爲了雙網卡實現一條網線訪問內網,一條ADSL訪問外網。在一個PI的災備項目中,爲了儘可能保證項目的安全,我測試了刪除路由表來進行物理隔離的方法,效果非常好,就一直沿用至今。我個人一直有個觀點,就是儘可能的去利用你所學到的所有東向西,除了正着用以外,也可以反着用,很多時候都會有意外的收穫。
轉載自莫貴陽的技術Blog.
原文鏈接:http://www.sapmogy.com/?p=122