我使用的是一个子网内的主机,也就是说IP地址用的是192.168.1.**的这种,我想与在另外一个子网的主机通信,他的主机IP地址也是192.168.1.**,但不是在同一个子网。
第一个问题是:我如何才能得知我的主机的公网IP。
第二个问题是:如果我是客户机,对方是服务机,我应该如何输入IP地址才能联接到对方的主机。

解决方案 »

  1.   

    如果兩個子網是用互聯網相連,每個子網的網關應該都有NAT,所以如果想互聯你要看一下NAT穿越的資料,一兩句說不清楚。1.你的主機并沒有公網ip,是和子網內的其他主機共享的一個公網ip,也就是網關的WAN網IP,主機與外部通訊時nat會有一個端口映射,將網關的端口映射到你的通訊端口。
    2.簡單的connect你無法連到對方主機,因為從外部發起的到內部主機的鏈接,因為nat沒有創建端口映射,所以會丟棄。互聯方法要參考nat穿越,也就是打洞,udp簡單些,tcp復雜