我正在嘗試創建一個虛擬測試環境。爲了測試的目的,我打算將udp數據包發送到在虛擬機內運行的應用程序。我想控制應用程序收到數據包的源IP地址。通過虛擬機中的多個接口進行多端口轉發
我嘗試過不同的無業遊民配置:
config.vm.network "forwarded_port", guest: 1111, host: 11111, adapter: 2
或
config.vm.network "forwarded_port", guest: 1111, host: 11111, host_ip: "x.x.x.x"
,但沒有成功。
在我看來,這隻能由流浪者獨自解決。不幸的是,我完全不熟悉iptables/route。
讓我更詳細地解釋問題: 理想的情況是能夠從虛擬環境本身發送它 - 應用程序正在偵聽某個端口P,然後測試腳本將數據發送到host1:port1,並且它通過一個接口和應用程序將其源IP視爲1.1.1.1,並且當腳本將數據包發送到host2:port2時,應用程序將其視爲來自2.2.2.2。
保持它的虛擬環境中是好的,因爲我可以在QA本地計算機只使用圖像和建立服務器,因爲它包含了一切。
如果此配置是不可能的(雖然我不知道爲什麼),配置虛擬框有2個(或以上),通過不同的接口轉發端口,因此在不同的源地址的數據包發送給他們的結果。
2-3就足夠了。你能提供一個配置示例嗎? – ilj