回覆列表
  • 1 # 使用者2012478283986

    這個問題很詭異,演繹一下,僅供參考。首先traceroute 是利用“TTL Expired”功能,讓沿途的路由器每次遭遇TTL = 0,會透過ICMP Type 11 傳送出錯訊息“TTL Expired”。而Ping的工作原理,是利用去向的Type 8(Echo Request),以及返程的Type 0 ( Echo Reply)。通常為了保護路由器CPU不受太大沖擊,會對Ping進行限速,一般一秒一個(可配置),超過了就丟,由於Windows Ping 通常2秒發一個,所以不會被丟,這點沒有問題。但對類似ICMP type 11就不一樣的處理了,這種是出錯報文,通常會禁掉,你會看到問題路由器出現三個連續的*號,但這裡沒有,所以沒有禁止。那是什麼情況呢?如果有一臺主機發

    1000000

    個出錯報文,那路由器是否就需要回復

    1000000

    個ICMP報文,如果真這麼做,對路由器就是一個DOS攻擊。路由器會有自己的實現方式,可以按照自己的喜好(這點RFC提到過),選擇合適的比例來回復,這不是強制標準,只是一個option。有的路由器可能會選擇接收到10個出錯報文,在第一時間回覆ICMP出錯報文,剩下9個就不回覆了,反正出錯型別一樣,省點力氣,保護自己。在這個問題裡,這臺出問題路由器選擇接收2個traceroute報文,回覆1個ICMP 出錯訊息的原則。

  • 中秋節和大豐收的關聯?
  • 《妖貓傳》白龍霸佔玉環變貓妖了嗎?