這篇文章目前記錄我使用SER(SIP Express Router)的設定檔, 以及SER的nathelper
    module的使用方式及設定, 使用的時候需要配合rtpproxy, 因為其中使用了比較新
    的function, 所以在使用本篇文章中提到的設定檔之前, 請先到以下網址獲取最新
    的ser以及rtpproxy. 並詳讀其附上的說明.
    SER CVS

    SER的nathelper可以藉由改寫SDP並於SIP proxy server上開啟socket, 將rtp的
    traffic導至SIP proxy上, 再轉至NAT內的SIP UA.

    configuration example

    它所支援的是symmetric RTP的UA, 文件中windows messenger是被標上一個問號,
    可能有些怪異的行為, 例如nathelper module在改寫SDP時會有一些東西無法正確
    parse, 不過在測試中並沒有影響語音交談.

    (symmetric RTP它是指用同一個port來收送RTP封包.)

    測試環境:
    目前為同一NAT server內之兩個NAT client, 下一步要做的是不同NAT server下的
    NAT client.
    SER+rtpproxy都在同一台主機上.
    windows messenger 4.7 (根據封包觀察, 它應該是symmetric RTP的SIP UA.)
    NAT client1 IP: 192.168.0.230
    NAT client2 IP; 192.168.0.3
    NAT server IP: 140.113.95.99 (private IP: 192.168.0.254)

    封包觀察:
    以下兩張圖可以看到nathelper幫我們把SDP做了改寫, 使得封包送到rtpproxy上.
    NAT client1收到 NAT client2的INVITE
    NAT client2收到 NAT client1的200 OK

    以下四張圖可以看到兩個client之間的RTP封包, 以及其行為, 並且可以看得出來,
    windows messenger是一個用symmetric RTP的SIP UA.
    NAT client1收到RTP封包
    NAT client1送出RTP封包
    NAT client2收到RTP封包
    NAT client2送出RTP封包

    TODO list:
    1. 利用不同NAT server下的NAT client來測試.
    2. 觀察經過多台SIP proxy後的封包.
    Note: some of the information may be outdated