大家好~

小弟有個VM的網路問題要像前輩們請教

下圖是小弟測試的網路架構
虛擬VM的網路問題

藍色區塊是用PCA的virtualbox建立出來的兩台VM,1台是FREEBSD,1台是winXP

FREEBSD設兩張網卡~一張對外網卡設bridge~一張對內網卡設intnet~同時已安裝DNS、DHCP服務

winXP設一張網卡是intnet模式~是為了要讓他吃FREEBSD的 DHCP 設定

但是 FREEBSD 如果只設定路由 winxp 無法上網~

必須在 FREEBSD 上安裝 NAT ,winxp才能上網

所以想問要如何做才能只設定路由就讓winxp上網



文章關鍵字
VM的NAT是透過你電腦來連外

bridegd才都是獨立IP

如果你的前面還有IP分享器的話,應該可以收到他配發的IP的
不好意思~小弟可能說沒清楚

小弟建立的2台VM,1台是FREEBSD,1台是winXP

FREEBSD設兩張網卡~一張對外網卡設bridge~一張對內網卡設intnet~同時已安裝DNS、DHCP服務

winXP設一張網卡是intnet模式~是為了要讓他吃FREEBSD的 DHCP 設定

但是 FREEBSD 如果只設定路由 winxp 無法上網~

必須在 FREEBSD 上安裝 NAT ,winxp才能上網

所以想問要如何做才能只設定路由就讓winxp上網

jackyepson wrote:
不好意思~小弟可能說...(恕刪)


不太懂為甚麼FreeBSD要建兩張NIC?
若要切開不同網段,那當然設NAT才可讓XP上網,不然就要在FreeBSD做靜態路由。
若只是要讓FreeBSD當DHCP server,那麼FreeBSD設一張NIC就夠了。
你已經設定了一個 封閉網路Internet
此時出口只有 FreeBSD 的 nat
換而言之 除非你自以在開一個洞 讓PCB 透過 PCA 的NAT出去
不然PCB 這裡的網路 是無法出去的

PCA --> 實體網卡 192.168.1.10 default 192.168.1.254
虛擬網卡 192.168.241.1

VM FREEBSD
Lan0 Bridge PCA實體網卡 192.168.1.11 defualt 192.168.1.254
Lan1 10.1.1.1

PCB VisaulLancard 10.1.1.10 <----由Freebsd 取得
若是依照此架構
PCB 路由只能設定 10.1.1.1

我在VMware 下做了除此設定

PCA --> 實體網卡 192.168.1.10 default 192.168.1.254
虛擬網卡 192.168.241.1

VM FREEBSD
Lan0 Bridge PCA實體網卡 192.168.1.11 defualt 192.168.1.254
Lan1 10.1.1.1

PCB VisaulLancard (NAT) 10.1.1.10 <----由Freebsd 取得
192.168.241.10 -> 192.168.241.2 <----由PCA 的Nat Lancard 出去
也就是PCB 要有兩個IP 分跨不同的IP Domain

疑問的是 你要讓PCB 出去? 又不想要由FreeBSD 當成NAT 作用是啥?
工作機 上線 P15 Gen1 48G RAM 一堆頻率不統一的 合在一起跑

OSos wrote:
PCB 要有兩個IP 分跨不同的IP Domain


OSos大~小弟不太懂這句的用意~

小弟的架構也確實是向OSos大說的這樣

只是我沒設PCA的虛擬網卡~

小弟想只用路由不用NAT是因為小弟的公司也是兩段虛擬網段~

但是從A網段到B網段的那台FREEBSD只有做路由沒有NAT

所以才想用VM也練習試做看看~可是卻沒辦法

是不是封閉網路Internet一定要NAT而不能只用設路由呢


網路卡設「橋接」,等同於獨立網卡,和 HOST 機的網路無關係。

一般的 XP 電腦,如果不是靠 PPPoE 撥接,就是要接 IP 分享器(NAT),才能上網吧....

所以虛擬的其實不用想太複雜,把它當一般電腦用就對了

如果用「橋接」的,然後又不想 PPPoE 撥接,也不想連接 IP 分享器(NAT),那怎麼可能上的了網。

或者可以那台 XP 虛擬機,在開一個網卡,用 NAT 模式的

*******************************************

FreeBSD 肯定可以做 NAT 的。不過它的防火牆不是 iptables....只能說:要上網爬資料吧。


若是 iptables 的,只要一行語法,就可以 NAT 了。

一般閘道主機,都是 DHCP、NAT、squid (Transpent Proxy)....等等服務一起做的

我想樓主你架這個環境,應該也是為了學習和實驗:如何架一台閘道主機+路由器。專心努力克服 FreeBSD 的 NAT 用法吧。

不然改用 Linux 吧
FreeBSD 現在不太流行了,偏冷門....

Linux 的話,網路上教學資料比較多,遇到不明白的,發問也比較容易得到解答。

在你那台freebsd 跟PCB 的ip 就是一個完全封閉的
例如 192.168.1.0/24 跟192.168.2.0/24 若是要通
一定要有一個 device 有兩張網卡 涵蓋這兩個ip
這個device 就是路由

這樣的基本概念你有了嗎?
若是你的實體機器 沒有其他虛擬網卡
那摩 FreeBSD VM 這就是你唯一出口
故你需要啟用nat

若是要啟用router 功能
你連更上層的router 都得要處理
工作機 上線 P15 Gen1 48G RAM 一堆頻率不統一的 合在一起跑
重複看了好多遍,我想我終於知道你的問題了

首先你的問題跟虛擬機器是沒關係的,純粹是電腦的概念問題

路由表是當有多張網卡時,告訴電腦主要從哪一張網卡出去,簡單來說 這不是轉址服務(NAT),Freebsd一直收到winxp丟來的ip package當然只會drop

純粹只是你不知道NAT跟路由表的意思

jackyepson wrote:
大家好~小弟有個VM...(恕刪)


我覺得問題不在 VM , 在您的網路架構上可能有問題. 可以列一下 IP B 跟 IP C 嗎?

假設狀況1:
IP C 用 192.168.x.x 的私用 IP , XP 送出的封包, 透過 FreeBSD 送到 Internet , 而 Internet 的其他機器, 對於 192.168.x.x 的封包, 並不會處理(依網路規範, 私用 IP 不會在 Internet 使用), 也不知道要丟回 FreeBSD , 所以 FreeBSD 也不會收到任何封包.

假設狀況1:
IP C 用 ISP 給的公用 IP , XP 送出的封包, 透過 FreeBSD 送到 Internet , 但 Internet 送回的封包, 在 FreeBSD 的對外網卡上, FreeBSD 預設"這不是我的封包"就忽略不管, 而 XP 就不會收到認何封包.

所以建議依用途調整一下網路架構:
a. XP 要用公用 IP , 則拿 FreeBSD 當"透通式"防火牆, 則需要設定為 FreeBSD 橋接, 這部份比較複雜, 可以找 Untangle 等防火牆軟體試試看.

b. 要測試使用路由模式, 則可以將虛擬環境改為:
XP_192.168.1.x <-> FreeBSD <-> XP_192.168.2.x
去測試.

文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!