我們在前面已經說過,從A到B的路徑并不一定與從B到A的路徑完全一樣。除非同時在兩個系統中登錄并在每個終端上運行traceroute程序,否則很難發現兩條路徑是否不同。但是,采用寬松的源站選路,就可以決定兩個方向上的路徑。
這里的竅門就在于指定一個寬松的源站路由,該路由的目的端和寬松路徑一樣,但發送端為目的主機。例如,在sun主機上,我們可以查看到發往以及來自bruno.cs.colorado.edu的結果如圖8-11所示。發出路徑(TTL字段為1~11)的結果與返回路徑(TTL字段為11~21)不同,這很好地說明了在Internet上,選路可能是不對稱的。
該輸出同時還說明了我們在圖8-3中所討論的問題。比較TTL字段為2和19的輸出結果:它們都是路由器gateway.tuc.noao.edu,但兩個IP地址卻是不同的。由于traceroute程序以進入接口作為其標識,而我們從兩條不同的方向經過該路由器,一條是發出路徑(TTL字段為2),另一條是返回路徑(TTL字段為19),因此可以猜想到這個結果。通過比較TTL字段為3和18、4和17的結果,可以看到同樣的結果。