兩個防火牆
在此案例中,您必須在建置 A 的電腦上執行核心偵錯。您的技術人員位於建築物 C 中,且可存取該處的符號。 不過,這兩個建築物都有不允許連入連線的防火牆。
您必須在中性網站設定重複項,例如建置 B。然後,您可以將 A 向外連接到 B,並將 C 向外連接到 B。
此案例中將涉及四部電腦:
位於建置 A 中的目的電腦。
本機主機電腦,位於建置 A 中。這部電腦將會執行 KD 連線伺服器。 它會透過偵錯纜線或 1394 纜線連接到目的電腦,並將連接到重複項。 讓這部電腦的 IP 位址是 127.0.10.10。
建置 B 中的電腦。這會執行重複程式。 讓它的 IP 位址是 127.0.20.20。
在建置 C 中技術人員所在的電腦。 這部電腦會以智慧型用戶端身分執行 WinDbg。 讓它的 IP 位址是 127.0.30.30。
首先,請確定目的電腦已設定偵錯,並附加至本機主機電腦。 在此範例中,會使用 1394 纜線。
其次,在 127.0.20.20 上啟動重複項:
dbengprx -p -s tcp:port=9001 -c tcp:port=9000,clicon=127.0.10.10
第三,在建置 A 的 127.0.10.10 上啟動 KD 連線伺服器,如下所示:
kdsrv -t tcp:port=9000,clicon=127.0.20.20,password=longjump
最後,在建置 C 中于 127.0.30.30 啟動智慧型用戶端。 (這實際上可以在建置 A.) 中啟動伺服器之前或之後完成
windbg -k kdsrv:server=@{tcp:server=127.0.20.20,port=9001,password=longjump},trans=@{1394:channel=9} -y SymbolPath
Five-Computer案例
如果您假設符號位於建置 C 中的一部電腦上,但技術人員位於不同的電腦上,則此案例可能會變得更複雜。
假設 127.0.30.30 具有符號,如先前所示,其本機名稱為 \\BOXC。 智慧型用戶端可以使用與上述相同的命令來啟動,但使用額外的 -server 參數。 由於沒有人會使用此電腦,因此如果您使用 KD 而不是 WinDbg,則處理時間會比較少:
kd -server npipe:pipe=randomname -k kdsrv:server=@{tcp:server=127.0.20.20,port=9001,password=longjump},trans=@{1394:channel=9} -y SymbolPath
然後技術人員可以在建築物中其他地方啟動偵錯用戶端,如下所示:
windbg -remote npipe:server=\\BOXC,pipe=randomname
請注意,密碼必須由鏈結中的第一個非重複器提供, (\\BOXC 上的智慧型用戶端) ,而不是由鏈結中的最後一個偵錯工具提供。