C程式怎麼獲得外網IP和內網IP

2022-06-02 09:30:24 字數 2877 閱讀 7681

1樓:匿名使用者

1、企業網內部的工作站通過出口路由器的nat轉換能夠上internet網。 2、企業網(目前來說大部分是教育網)內部有一些伺服器,如圖中的server,本身具有私網ip地址10.0.

0.3,而且需要被公網所訪問,所以需要在企業網的出口處對其做靜態nat轉換,將其轉換為一個公網ip地址2.0.

0.5。企業外部的公網使用者通過該伺服器公網ip或解析後的域名對其進行訪問,而企業內部的工作站如果使用公網上的一臺dns,那麼也將使用域名對該伺服器進行訪問。

3、企業網(目前來說大部分是教育網)內部還有一些伺服器,如圖中的game-server,它本身具有公網ip地址,它也既需要被私網使用者所訪問,也需要被公網使用者所訪問。三、解決方案 1、常規配置: 就按照拓撲圖中的配置方法,workstation應該是可以訪問到伺服器server的,只不過需要公網路由器的參與。

具體過程是workstation發出一個以server的公網ip(2.0.0.

5)為目標地址的資料包,源地址是10.0.0.

2,這個資料包經過router時,它會首先遵從路由表進行路由, 2.0.0.

5這個地址雖然屬於運營商分給我們的一段公網ip的一部分,但由於該地址並不與任何介面同屬一個網段,所以路由器只會按照預設路由路由這個資料包到公網路由器,從物理埠向外發出時,nat會起作用,這個資料包的源ip會被替換為2.0.0.

1(地址池裡的第一個地址)。當公網路由器收到這個資料包時,它查目標地址所在網段,發現這個地址已經被分給該企業網,所以會遵從那條路由將該資料包發回到router。此時這個資料包的源ip是2.

0.0.1,目標ip為2.

0.0.5,router查nat表發現2.

0.0.5這個公網ip應按照配置了的靜態nat表項轉換為10.

0.0.3,所以當路由器把這個資料包發給server時,資料包的目的ip就被轉換成了10.

0.0.3,而源ip仍為2.

0.0.1。

當server回覆這個資料包時也按照對等的方式返回workstation。總結地說,就是這個過程是需要公網路由器參與完成的,而公網裝置對我們來說是不可控的,所以當公網路由器因為某種原因拒絕參與這個過程時(比如出口鏈路斷),這種訪問方式將變為不可行。而且資料包要在企業網與公網的路由器之間走了一個環,浪費了頻寬及裝置的效能資源。

採用這種方法時,我從workstation上用tracert命令資料包的行走路徑,更清晰地反應了這一過程: c:\documents and settings\bluephoenix>tracert 2.

0.0.5 tracing route to 2.

0.0.5 over a maximum of 30 hops 1 <1 ms <1 ms <1 ms 10.

0.0.1

2 <1 ms <1 ms <1 ms 1.1.1.2

3 * * * request timed out.

4 3 ms 3 ms 3 ms 2.0.0.

5 2、dns解析 不論私網使用者和公網使用者他們訪問伺服器時實際上一般都是通過dns來完成的。讓私網使用者將dns指向私網內的一臺可管理dns也可以解決這個問題,即修改dns中關於server的解析記錄,讓其指向server的私網ip即可,改過之後使用者就可以使用通常的域名對該伺服器進行訪問了,只不過該過程是透明的,使用者並不知道已經使用了私網ip在進行訪問。 這種方法對我們來說比較輕鬆,沒有給我們增加維護成本,請大家儘量說服使用者採用這樣的方法,但該方法應用場合有限,如果私網使用者非要使用公網ip地址而不是域名來對server進行訪問,這種方法就行不通了,那就必須採取第三種方法。

3、loopback與策略路由法 router的配置步驟為: (1) 建立loopback介面,隨便配置一個ip地址,並將其設為ip nat ouse (2) 建立access-list,用來匹配私網客戶端訪問server以及server做迴應的資料流 (3) 定義policy-route table,設定策略預設路由指向loopback介面,設定ip policy-route enable。 (4) 定義route-map,設定匹配access-list的資料流都使用策略路由;並將這一route-map應用到介面。

(5) 建立一個null 0介面,並由ip nat pool所形成的路由指向null 0介面,以防止不能命中nat規則的報文在企業網路由器和公網路由器之間**。(這一步不是必須的,但為了穩定起見,建議作這一步;另外只能在這種方法中使用指向null 0的路由,如果在第一種方法中使用了,那麼資料包將不會在企業網路由器和公網路由器之間環遊一週,而直接被陷在企業網路由器中了,將導致第一種方法失敗。)

怎麼實現c#獲取ip內網,外網地址?

c#中這個獲取的是外網ip,如何獲取客戶內網ip呢

c#如何監聽外網的ip,我是在區域網中, 如何讓自己的程式的服務端能夠監聽外網的ip和埠

c# tcp/ip中的客戶端和伺服器在區域網或外網怎麼通訊呀?誰有完整的例子呀.

2樓:匿名使用者

socket,區域網 是沒有問題的,但是廣域網,需要用p2p

我這裡有老外寫得socket、server和client,非p2p,在區域網測試過了。

但是**太長,貼不完,需要的話 留下mail。

3樓:匿名使用者

把機器防火牆關了,地址對,埠可用肯定連得上

4樓:匿名使用者

專案?不會是北大青鳥的qq吧。。。

怎麼新增外網ip??路由器怎麼設定外網ip

進入 控制面板 網路和 internet 網路和共享中心選擇其網路,屬性 協議版本4 高階 v 進入後可以新增 外網ip 外網ip不是你設定的。是電信自己分配給你的。你只要設定好你的內網閘道器ip就行了。你的路由是即插即用那種的嗎?像tplink那種的。那種不用設定,內網ip都是設定好的或者。外網ip...

電腦的ip地址怎麼修改,電腦外網IP地址怎麼修改?

普通的寬頻使用者ip是由運營商隨機分配的,每次連線到網路,通過寬頻帳號認證之後,運營商的認證伺服器會隨機分配一個ip給你的計算機,所以每次都是不一樣的 你是adsl的撥號啊,ip不是固定的,隔天撥號的ip地址是伺服器分配給你的 要想修改本地的本機的ip地址,那麼你需要進入網路連線裡面就可以修改ip地...

h3c防火牆讓內網網段只訪問外網ip怎麼設定

做acl 再應用。例如 acl nu 3000 rule permit ip des 1.1.1.1 0int g0 0 nat ou 3000 這相的話。就只允許去1.1.1.1了。h3c secpath u200 s 如何在內網使用外網ip地址訪問內網伺服器 5 這個問題很經典的,防火牆上顯然配...