在IRC DCC通信發起到其他人,你必須提供一個IP地址的連接和端口。但是,您如何在IPv6世界中處理這個問題?如何處理IPv6在IRC的DCC協議
我用Java編寫機器人的IRC框架的一部分,所以我需要能夠處理各種情況。目前似乎沒有要處理這種
我做了一些測試,以通過IPv6現有客戶的標準方式(二Teredo客戶端連接到freenode的通過IPv6
- Chatzilla在Firefox不發送任何東西。它只是就像什麼也沒發生
- XChat的只是將0作爲IP地址,這是不對的。
我知道有一些擴展到DCC協議發送人類可讀格式的IP地址,但那些不是標準的也不是廣泛的y支持。發送0似乎不是將來證明我的機器人的合適方式。
現在我正在將IPv6地址轉換爲BigInteger,但另一方面,弄清楚BigInteger是IPv4還是IPv6地址正在困擾着我(我在問以後會怎麼做)。
TL; DR:在IPv6環境中處理DCC的適當方式是什麼?我應該送0,我不應該在所有發送任何內容,提高在機器人,它不支持的異常,或者我應該送怪物的BigInteger?
1;基於此,我想說轉換爲BigInteger目前是安全的黑客攻擊。除非是回送地址,否則您可以放心地假定IPv6地址永遠不會是'UINT_MAX'或更小(4,294,967,296)。但我同意檢查其他客戶做什麼。 – mpontillo
@Mike有*有*沒有「其他客戶」,因爲DCC是一個黑客反正,現在僅支持IPv4,期。 – mirabilos