SlideShare uma empresa Scribd logo
1 de 27
VirtualBox
networking
VirtualBox networking
• Different options are available
• Internal network
• NAT
• NAT network
• Host only
• Bridged
• When do you use which?
What are the benefits and drawbacks of using a specific VirtualBox networking solution?
Titel van de presentatie 2
Host
VirtualBox
VirtualBox networking
Internal network
Titel van de presentatie 3
Guest
Internal IP:192.168.0.8
Internal IP:192.168.0.1
Hostinterface
IP:10.10.10.2
Other host processes
Guest
Internal IP:192.168.0.9
Gateway/router
InternalIP:10.10.10.1
ExternalIP:95.42.76.32
VirtualBox networking
Internal network
• VirtualBox makes available automatically a network interface inside a guest. If multiple guests
share the same interface name, they are connected like a switch and can access each other.
• A CLI can be used to configure the internal VirtualBox DHCP server (no GUI support)
• Internet access or access to the host network interfaces is not available
• The host cannot access guests
Titel van de presentatie 4
VirtualBox networking
Internal network
• Benefits:
• Easy to use. Little configuration required
• No VirtualBox virtual host network interface (device + driver) required
• Guests can access each other
• Secure (access from outside the host is not possible)
• Drawbacks
• The host can’t access the guests
• Guests can’t access the host
• Guests can’t access the internet
• The VirtualBox internal DHCP server has no GUI support, only a CLI
Titel van de presentatie 5
VirtualBox networking
Internal network
Titel van de presentatie 6
Guest configuration
Host
VirtualBox
VirtualBox networking
Network Address Translation
Titel van de presentatie 7
Guest
Internal IP:192.168.0.8
Virtual NAT router
Internal IP:192.168.0.1
External: host interface
Hostinterface
IP:10.10.10.2
Other host processes
Guest
Internal IP:192.168.0.9
Virtual NAT router
Internal IP:192.168.0.1
External: host interface
Gateway/router
InternalIP:10.10.10.1
ExternalIP:95.42.76.32
VirtualBox networking
Network Address Translation
• VirtualBox makes available automatically a single virtual isolated NAT router on a network
interface inside a guest. Every guest gets his own virtual router and can’t access other guests.
• DHCP (Dynamic Host Configuration Protocol) requests on the interface are answered with an
IP for the guest and address of the NAT router as gateway. The DHCP server can be configured
using a CLI (no GUI support).
• The NAT router uses the hosts network interface. No specific VirtualBox network interface
needs to be created. External parties only see a single host interface.
• The NAT router opens a port on the hosts interface. The internal address is translated to the
hosts IP. The request to the destination IP is done. The response is forwarded back towards the
guest (a table of external port to internal IP is kept by the router).
• Port mappings can be made to allow requests to the host on a specific port to be forwarded to
the guest.
Titel van de presentatie 8
VirtualBox networking
Network Address Translation
• Benefits:
• Easy to use. Little configuration required
• Isolated. Every guest their own virtual router
• No VirtualBox virtual host network interface (device + driver) required
• Internet access
• Fixed IP possible
• Drawbacks
• Guests can’t access each other or the host
• The virtual NAT router DHCP server can be configured using a CLI only
• To access the guest from the host requires port forwarding configuration
and might require an entry in the hosts hosts file for specific web interfaces
Titel van de presentatie 9
VirtualBox networking
Network Address Translation
Titel van de presentatie 10
Guest configuration
Host
VirtualBox
VirtualBox networking
Network Address Translation. NAT network
Titel van de presentatie 11
Guest
Internal IP:192.168.0.8 Virtual NAT router
Internal IP:192.168.0.1
External IP: host interface
Hostinterface
IP:10.10.10.2
Other host processes
Guest
Internal IP:192.168.0.9
11
Gateway/router
InternalIP:10.10.10.1
ExternalIP:95.42.76.32
VirtualBox networking
Network Address Translation. NAT network
• VirtualBox makes available a virtual NAT router on a network interface for all guests using the
NAT network. Guests can access each other. The NAT network needs to be created.
• DHCP (Dynamic Host Configuration Protocol) requests on the interface are answered with an
IP for the guest and address of the NAT router as gateway. The DHCP server can be
configured.
• The NAT router uses the hosts network interface. No specific VirtualBox network interface
needs to be created. External parties only see a single host interface.
• The NAT router opens a port on the hosts interface. The internal address is translated to the
hosts IP to a specific port per host. The request to the destination IP is done. The response is
forwarded back towards the guest (a table of external port to internal IP is kept by the router).
• Port mappings can be made to allow requests to the host on a specific port to be forwarded to a
guest.
Titel van de presentatie 12
VirtualBox networking
Network Address Translation. NAT network
Titel van de presentatie 13
VirtualBox configuration Guest configuration
VirtualBox networking
Network Address Translation. NAT network
• Benefits:
• Guests can access each other
• No VirtualBox virtual host network interface (device + driver) required
• DHCP server can be configured using the GUI
• Internet access
• Fixed IP possible
• Drawbacks
• To access the guest from the host requires port forwarding configuration
and might require an entry in the hosts hosts file for specific webinterfaces
• Requires additional VirtualBox configuration to define the network / DHCP server
Titel van de presentatie 14
Host
VirtualBox
VirtualBox networking
Host only
Titel van de presentatie 15
Guest
Internal IP:192.168.0.100
Hostinterface
IP:10.10.10.2
Other host processes
Guest
Internal IP:192.168.0.101
Hostinterface
IP:192.168.0.1
1515
Gateway/router
InternalIP:10.10.10.1
ExternalIP:95.42.76.32
VirtualBox networking
Host only
• VirtualBox creates a host interface (a virtual device visible on the host). This interface can be
shared amongst guests. Guests can access each other.
• DHCP (Dynamic Host Configuration Protocol) requests on the interface are answered with an
IP for the guest and address of the Host only adapter. The DHCP server can be configured
using the VirtualBox GUI
• The virtual host interface is not visible outside of the host. The internet cannot be accessed via
this interface from the guest.
• The host can access the guests by IP. Port mappings are not needed.
Titel van de presentatie 16
VirtualBox networking
Host only
Titel van de presentatie 17
VirtualBox configuration Guest configuration
VirtualBox networking
Host only
• Benefits:
• Guests can access each other
• You can create separate guest networks
• DHCP server can be configured using the GUI
• Fixed IP possible
• Drawbacks
• To access the guest from the host requires port forwarding configuration
and might require an entry in the hosts hosts file for specific webinterfaces
• Requires additional VirtualBox configuration to define the network / DHCP server
• VirtualBox virtual host network interface (device + driver) required
• No internet access
Titel van de presentatie 18
VirtualBox networking
Bridged
Titel van de presentatie 19
Host
VirtualBox
Guest 1
Hostinterface
IP:10.10.10.2(host)
IP:10.10.10.3(Guest1)
IP:10.10.10.4(Guest2)
Other host processes
Guest 2
Gateway/router
InternalIP:10.10.10.1
ExternalIP:95.42.76.32
VirtualBox networking
Bridged
• The guest uses a host interface.
On the host interface a net filter driver is applied to allow VirtualBox to send data to the guest.
This requires a so-called promiscuous mode to be used by the adapter. Promiscuous mode
means the adapter can have multiple MAC addresses. Most wireless adapters do not support
this. In that case VirtualBox replaces the MAC address of packages which are visible to the
adapter.
• An external DHCP server is used. Same way the host gets its IP / gateway. No additional
configuration required. It might not work if the DHCP server only allows registered MACs (some
company networks)
• Easy access. The guest is directly available from the network (every host) the host is connected
to. Port mappings are not required. The host can access the guests by IP. Guests can access
the host by IP.
Titel van de presentatie 20
VirtualBox networking
Bridged
Titel van de presentatie 21
Guest configuration
VirtualBox networking
Bridged
• Benefits:
• Guests can access each other
• Host can access guests and guests can access the host. Anyone on the host
network can access the guests
• No virtual DHCP server needed
• Easy to configure / use
• Same access to internet as the host has
• Drawbacks
• Guests can’t be split into separate networks (not isolated)
• Sometimes doesn’t work; dependent on external DHCP server and ability to filter
packets on a host network interface. Company networks might block your interface
• No easy option for a fixed IP since host network is a variable
• Not secure. The guest is exposed on the hosts network
Titel van de presentatie 22
VirtualBox networking
Overview
Titel van de presentatie 23
Guest → Host Guest ← Host Guest1 ↔ Guest2 Guest → Internet Guest ← Internet
Host-only + + + – –
Internal – – + – –
Bridged + + + + +
NAT – Port forwarding – + Port forwarding
NAT Network – Port forwarding + + Port forwarding
VirtualBox networking
Case 1: ELK stack for learning purposes
• I’m trying out the new version of the ELK stack (Elasticsearch, Logstash, Kibana)
• Requirements:
• I do not require internet access inside the guest
• I want to access my guest from my host
• I do not want my guest to be accessible outside of my host
• I do not want to manually configure port mappings
Which networking solution should I choose?
Titel van de presentatie 24
Solution: Host only adapter
VirtualBox networking
Case 2: SOA Suite for a security workshop
• I’m using Oracle SOA Suite for a security workshop
SOA Suite consists of 3 separate VMs, DB, Admin Server, Managed Server
• Requirements:
• The VMs require fixed (internal) IPs
• The VMs need to be able to access each other
• Course participants need to call my services from the same network
• I only want to expose specific ports
Which networking solution should I choose?
Titel van de presentatie 25
Solution: NAT network or NAT + Host only
VirtualBox networking
Case 3: Distributing a VM for a course
• I’ve created an Ubuntu / Spring Tool Suite VM for a course. The VM will be
distributed to participants.
• Requirements:
• The VM to distribute requires internet access. During the course several things
will need to be downloaded
• I am unaware of the VirtualBox created interfaces present on the host machines
and don’t want the participants to manually have to select an adapter
• I want the participants to do as little networking configuration as possible.
VirtualBox networking is not the purpose of this course.
Which networking solution should I choose?
Titel van de presentatie 26
Solution: NAT
VirtualBox networking
Case 4: Running a server inside a VM
• I’ve created a server inside a VM which hosts an application.
• Requirements:
• The MAC of the VM is configured inside the routers DHCP server so it will always get the same IP.
Use the external DHCP server to obtain an IP
• The application will be used by (and thus needs to be accessible for) different people on the network.
• The application uses many different ports for different features. These ports change regularly. Some
features use random ports. Manual port mappings are not an option
• The application accesses different resources (such as a print server) on the hosts network
Which networking solution should I choose?
Titel van de presentatie 27
Solution: Bridged

Mais conteúdo relacionado

Mais procurados

Centos operating system
Centos operating systemCentos operating system
Centos operating systemAgbada
 
Building Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionBuilding Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionSherif Mousa
 
Introduction to Virtualization
Introduction to VirtualizationIntroduction to Virtualization
Introduction to Virtualizationelliando dias
 
Virtualization in cloud
Virtualization in cloudVirtualization in cloud
Virtualization in cloudAshok Kumar
 
Virtualization and its Types
Virtualization and its TypesVirtualization and its Types
Virtualization and its TypesHTS Hosting
 
Network Virtualization
Network VirtualizationNetwork Virtualization
Network VirtualizationADVA
 
virtualization and hypervisors
virtualization and hypervisorsvirtualization and hypervisors
virtualization and hypervisorsGaurav Suri
 
Virtual Infrastructure Overview
Virtual Infrastructure OverviewVirtual Infrastructure Overview
Virtual Infrastructure Overviewvalerian_ceaus
 

Mais procurados (20)

Centos operating system
Centos operating systemCentos operating system
Centos operating system
 
Hypervisors
HypervisorsHypervisors
Hypervisors
 
Virtualization
VirtualizationVirtualization
Virtualization
 
Building Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionBuilding Embedded Linux Systems Introduction
Building Embedded Linux Systems Introduction
 
Apache tomcat
Apache tomcatApache tomcat
Apache tomcat
 
Microsoft Hyper-V
Microsoft Hyper-VMicrosoft Hyper-V
Microsoft Hyper-V
 
Virtualization
Virtualization Virtualization
Virtualization
 
GNS3
GNS3GNS3
GNS3
 
Linux distributions
Linux    distributionsLinux    distributions
Linux distributions
 
Paravirtualization
ParavirtualizationParavirtualization
Paravirtualization
 
Introduction to Virtualization
Introduction to VirtualizationIntroduction to Virtualization
Introduction to Virtualization
 
Linux06 nfs
Linux06 nfsLinux06 nfs
Linux06 nfs
 
Virtualization in cloud
Virtualization in cloudVirtualization in cloud
Virtualization in cloud
 
Virtualization
VirtualizationVirtualization
Virtualization
 
Virtualization and its Types
Virtualization and its TypesVirtualization and its Types
Virtualization and its Types
 
Network Virtualization
Network VirtualizationNetwork Virtualization
Network Virtualization
 
virtualization and hypervisors
virtualization and hypervisorsvirtualization and hypervisors
virtualization and hypervisors
 
Windows Server 2019 -InspireTech 2019
Windows Server 2019 -InspireTech 2019Windows Server 2019 -InspireTech 2019
Windows Server 2019 -InspireTech 2019
 
IIS
IISIIS
IIS
 
Virtual Infrastructure Overview
Virtual Infrastructure OverviewVirtual Infrastructure Overview
Virtual Infrastructure Overview
 

Semelhante a VirtualBox networking explained

Using oracle vm virtual box as your development platform
Using oracle vm virtual box as your development platformUsing oracle vm virtual box as your development platform
Using oracle vm virtual box as your development platformOTN Systems Hub
 
Microsoft Offical Course 20410C_05
Microsoft Offical Course 20410C_05Microsoft Offical Course 20410C_05
Microsoft Offical Course 20410C_05gameaxt
 
MikroTik MTCNA
MikroTik MTCNAMikroTik MTCNA
MikroTik MTCNAAli Layth
 
Networking Basics with Linux
Networking Basics with LinuxNetworking Basics with Linux
Networking Basics with LinuxHenry Osborne
 
Module (10) NAT for IPV4.pptx
Module (10) NAT for IPV4.pptxModule (10) NAT for IPV4.pptx
Module (10) NAT for IPV4.pptxGeorgeThoreJr
 
Docker Online Meetup #22: Docker Networking
Docker Online Meetup #22: Docker NetworkingDocker Online Meetup #22: Docker Networking
Docker Online Meetup #22: Docker NetworkingDocker, Inc.
 
Computer Networking: A Top-Down Approach
Computer Networking: A Top-Down Approach Computer Networking: A Top-Down Approach
Computer Networking: A Top-Down Approach PolRobinson
 
Implementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migrationImplementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migrationYan Vugenfirer
 
Managing ejabberd Platforms with Docker - ejabberd Workshop #1
Managing ejabberd Platforms with Docker - ejabberd Workshop #1Managing ejabberd Platforms with Docker - ejabberd Workshop #1
Managing ejabberd Platforms with Docker - ejabberd Workshop #1Mickaël Rémond
 
CONFIGURING NETWORK CONNECTIVITY.pptx
CONFIGURING NETWORK CONNECTIVITY.pptxCONFIGURING NETWORK CONNECTIVITY.pptx
CONFIGURING NETWORK CONNECTIVITY.pptxangelito tomas
 
Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08gameaxt
 
Networking in Docker Containers
Networking in Docker ContainersNetworking in Docker Containers
Networking in Docker ContainersAttila Kanto
 
Docker Networking - Current Status and goals of Experimental Networking
Docker Networking - Current Status and goals of Experimental NetworkingDocker Networking - Current Status and goals of Experimental Networking
Docker Networking - Current Status and goals of Experimental NetworkingSreenivas Makam
 
DockerCon SF 2015: Networking Breakout
DockerCon SF 2015: Networking BreakoutDockerCon SF 2015: Networking Breakout
DockerCon SF 2015: Networking BreakoutDocker, Inc.
 

Semelhante a VirtualBox networking explained (20)

Using oracle vm virtual box as your development platform
Using oracle vm virtual box as your development platformUsing oracle vm virtual box as your development platform
Using oracle vm virtual box as your development platform
 
Microsoft Offical Course 20410C_05
Microsoft Offical Course 20410C_05Microsoft Offical Course 20410C_05
Microsoft Offical Course 20410C_05
 
162 15-768
162 15-768162 15-768
162 15-768
 
MikroTik MTCNA
MikroTik MTCNAMikroTik MTCNA
MikroTik MTCNA
 
Networking Basics with Linux
Networking Basics with LinuxNetworking Basics with Linux
Networking Basics with Linux
 
Module (10) NAT for IPV4.pptx
Module (10) NAT for IPV4.pptxModule (10) NAT for IPV4.pptx
Module (10) NAT for IPV4.pptx
 
p10
p10p10
p10
 
p10
p10p10
p10
 
Docker Online Meetup #22: Docker Networking
Docker Online Meetup #22: Docker NetworkingDocker Online Meetup #22: Docker Networking
Docker Online Meetup #22: Docker Networking
 
Computer Networking: A Top-Down Approach
Computer Networking: A Top-Down Approach Computer Networking: A Top-Down Approach
Computer Networking: A Top-Down Approach
 
Implementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migrationImplementing SR-IOv failover for Windows guests during live migration
Implementing SR-IOv failover for Windows guests during live migration
 
Managing ejabberd Platforms with Docker - ejabberd Workshop #1
Managing ejabberd Platforms with Docker - ejabberd Workshop #1Managing ejabberd Platforms with Docker - ejabberd Workshop #1
Managing ejabberd Platforms with Docker - ejabberd Workshop #1
 
CONFIGURING NETWORK CONNECTIVITY.pptx
CONFIGURING NETWORK CONNECTIVITY.pptxCONFIGURING NETWORK CONNECTIVITY.pptx
CONFIGURING NETWORK CONNECTIVITY.pptx
 
Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08
 
Networking in Docker Containers
Networking in Docker ContainersNetworking in Docker Containers
Networking in Docker Containers
 
Docker Networking - Current Status and goals of Experimental Networking
Docker Networking - Current Status and goals of Experimental NetworkingDocker Networking - Current Status and goals of Experimental Networking
Docker Networking - Current Status and goals of Experimental Networking
 
Dhcp and nat
Dhcp and natDhcp and nat
Dhcp and nat
 
DHCP PROTOCOL
DHCP PROTOCOLDHCP PROTOCOL
DHCP PROTOCOL
 
Unit05
Unit05Unit05
Unit05
 
DockerCon SF 2015: Networking Breakout
DockerCon SF 2015: Networking BreakoutDockerCon SF 2015: Networking Breakout
DockerCon SF 2015: Networking Breakout
 

Mais de Maarten Smeets

Google jib: Building Java containers without Docker
Google jib: Building Java containers without DockerGoogle jib: Building Java containers without Docker
Google jib: Building Java containers without DockerMaarten Smeets
 
Introduction to Anchore Engine
Introduction to Anchore EngineIntroduction to Anchore Engine
Introduction to Anchore EngineMaarten Smeets
 
R2DBC Reactive Relational Database Connectivity
R2DBC Reactive Relational Database ConnectivityR2DBC Reactive Relational Database Connectivity
R2DBC Reactive Relational Database ConnectivityMaarten Smeets
 
Performance Issue? Machine Learning to the rescue!
Performance Issue? Machine Learning to the rescue!Performance Issue? Machine Learning to the rescue!
Performance Issue? Machine Learning to the rescue!Maarten Smeets
 
Performance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsPerformance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsMaarten Smeets
 
Performance of Microservice frameworks on different JVMs
Performance of Microservice frameworks on different JVMsPerformance of Microservice frameworks on different JVMs
Performance of Microservice frameworks on different JVMsMaarten Smeets
 
Microservices on Application Container Cloud Service
Microservices on Application Container Cloud ServiceMicroservices on Application Container Cloud Service
Microservices on Application Container Cloud ServiceMaarten Smeets
 
WebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck ThreadsWebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck ThreadsMaarten Smeets
 
All you need to know about transport layer security
All you need to know about transport layer securityAll you need to know about transport layer security
All you need to know about transport layer securityMaarten Smeets
 
Webservice security considerations and measures
Webservice security considerations and measuresWebservice security considerations and measures
Webservice security considerations and measuresMaarten Smeets
 
Machine learning with R
Machine learning with RMachine learning with R
Machine learning with RMaarten Smeets
 
WebLogic Scripting Tool made Cool!
WebLogic Scripting Tool made Cool!WebLogic Scripting Tool made Cool!
WebLogic Scripting Tool made Cool!Maarten Smeets
 
Oracle SOA Suite 12.2.1 new features
Oracle SOA Suite 12.2.1 new featuresOracle SOA Suite 12.2.1 new features
Oracle SOA Suite 12.2.1 new featuresMaarten Smeets
 
How to build a cloud adapter
How to build a cloud adapterHow to build a cloud adapter
How to build a cloud adapterMaarten Smeets
 
WebLogic authentication debugging
WebLogic authentication debuggingWebLogic authentication debugging
WebLogic authentication debuggingMaarten Smeets
 

Mais de Maarten Smeets (16)

Google jib: Building Java containers without Docker
Google jib: Building Java containers without DockerGoogle jib: Building Java containers without Docker
Google jib: Building Java containers without Docker
 
Introduction to Anchore Engine
Introduction to Anchore EngineIntroduction to Anchore Engine
Introduction to Anchore Engine
 
R2DBC Reactive Relational Database Connectivity
R2DBC Reactive Relational Database ConnectivityR2DBC Reactive Relational Database Connectivity
R2DBC Reactive Relational Database Connectivity
 
Performance Issue? Machine Learning to the rescue!
Performance Issue? Machine Learning to the rescue!Performance Issue? Machine Learning to the rescue!
Performance Issue? Machine Learning to the rescue!
 
Performance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsPerformance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMs
 
Performance of Microservice frameworks on different JVMs
Performance of Microservice frameworks on different JVMsPerformance of Microservice frameworks on different JVMs
Performance of Microservice frameworks on different JVMs
 
Microservices on Application Container Cloud Service
Microservices on Application Container Cloud ServiceMicroservices on Application Container Cloud Service
Microservices on Application Container Cloud Service
 
WebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck ThreadsWebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck Threads
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
 
All you need to know about transport layer security
All you need to know about transport layer securityAll you need to know about transport layer security
All you need to know about transport layer security
 
Webservice security considerations and measures
Webservice security considerations and measuresWebservice security considerations and measures
Webservice security considerations and measures
 
Machine learning with R
Machine learning with RMachine learning with R
Machine learning with R
 
WebLogic Scripting Tool made Cool!
WebLogic Scripting Tool made Cool!WebLogic Scripting Tool made Cool!
WebLogic Scripting Tool made Cool!
 
Oracle SOA Suite 12.2.1 new features
Oracle SOA Suite 12.2.1 new featuresOracle SOA Suite 12.2.1 new features
Oracle SOA Suite 12.2.1 new features
 
How to build a cloud adapter
How to build a cloud adapterHow to build a cloud adapter
How to build a cloud adapter
 
WebLogic authentication debugging
WebLogic authentication debuggingWebLogic authentication debugging
WebLogic authentication debugging
 

Último

HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 

Último (20)

HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 

VirtualBox networking explained

  • 2. VirtualBox networking • Different options are available • Internal network • NAT • NAT network • Host only • Bridged • When do you use which? What are the benefits and drawbacks of using a specific VirtualBox networking solution? Titel van de presentatie 2
  • 3. Host VirtualBox VirtualBox networking Internal network Titel van de presentatie 3 Guest Internal IP:192.168.0.8 Internal IP:192.168.0.1 Hostinterface IP:10.10.10.2 Other host processes Guest Internal IP:192.168.0.9 Gateway/router InternalIP:10.10.10.1 ExternalIP:95.42.76.32
  • 4. VirtualBox networking Internal network • VirtualBox makes available automatically a network interface inside a guest. If multiple guests share the same interface name, they are connected like a switch and can access each other. • A CLI can be used to configure the internal VirtualBox DHCP server (no GUI support) • Internet access or access to the host network interfaces is not available • The host cannot access guests Titel van de presentatie 4
  • 5. VirtualBox networking Internal network • Benefits: • Easy to use. Little configuration required • No VirtualBox virtual host network interface (device + driver) required • Guests can access each other • Secure (access from outside the host is not possible) • Drawbacks • The host can’t access the guests • Guests can’t access the host • Guests can’t access the internet • The VirtualBox internal DHCP server has no GUI support, only a CLI Titel van de presentatie 5
  • 6. VirtualBox networking Internal network Titel van de presentatie 6 Guest configuration
  • 7. Host VirtualBox VirtualBox networking Network Address Translation Titel van de presentatie 7 Guest Internal IP:192.168.0.8 Virtual NAT router Internal IP:192.168.0.1 External: host interface Hostinterface IP:10.10.10.2 Other host processes Guest Internal IP:192.168.0.9 Virtual NAT router Internal IP:192.168.0.1 External: host interface Gateway/router InternalIP:10.10.10.1 ExternalIP:95.42.76.32
  • 8. VirtualBox networking Network Address Translation • VirtualBox makes available automatically a single virtual isolated NAT router on a network interface inside a guest. Every guest gets his own virtual router and can’t access other guests. • DHCP (Dynamic Host Configuration Protocol) requests on the interface are answered with an IP for the guest and address of the NAT router as gateway. The DHCP server can be configured using a CLI (no GUI support). • The NAT router uses the hosts network interface. No specific VirtualBox network interface needs to be created. External parties only see a single host interface. • The NAT router opens a port on the hosts interface. The internal address is translated to the hosts IP. The request to the destination IP is done. The response is forwarded back towards the guest (a table of external port to internal IP is kept by the router). • Port mappings can be made to allow requests to the host on a specific port to be forwarded to the guest. Titel van de presentatie 8
  • 9. VirtualBox networking Network Address Translation • Benefits: • Easy to use. Little configuration required • Isolated. Every guest their own virtual router • No VirtualBox virtual host network interface (device + driver) required • Internet access • Fixed IP possible • Drawbacks • Guests can’t access each other or the host • The virtual NAT router DHCP server can be configured using a CLI only • To access the guest from the host requires port forwarding configuration and might require an entry in the hosts hosts file for specific web interfaces Titel van de presentatie 9
  • 10. VirtualBox networking Network Address Translation Titel van de presentatie 10 Guest configuration
  • 11. Host VirtualBox VirtualBox networking Network Address Translation. NAT network Titel van de presentatie 11 Guest Internal IP:192.168.0.8 Virtual NAT router Internal IP:192.168.0.1 External IP: host interface Hostinterface IP:10.10.10.2 Other host processes Guest Internal IP:192.168.0.9 11 Gateway/router InternalIP:10.10.10.1 ExternalIP:95.42.76.32
  • 12. VirtualBox networking Network Address Translation. NAT network • VirtualBox makes available a virtual NAT router on a network interface for all guests using the NAT network. Guests can access each other. The NAT network needs to be created. • DHCP (Dynamic Host Configuration Protocol) requests on the interface are answered with an IP for the guest and address of the NAT router as gateway. The DHCP server can be configured. • The NAT router uses the hosts network interface. No specific VirtualBox network interface needs to be created. External parties only see a single host interface. • The NAT router opens a port on the hosts interface. The internal address is translated to the hosts IP to a specific port per host. The request to the destination IP is done. The response is forwarded back towards the guest (a table of external port to internal IP is kept by the router). • Port mappings can be made to allow requests to the host on a specific port to be forwarded to a guest. Titel van de presentatie 12
  • 13. VirtualBox networking Network Address Translation. NAT network Titel van de presentatie 13 VirtualBox configuration Guest configuration
  • 14. VirtualBox networking Network Address Translation. NAT network • Benefits: • Guests can access each other • No VirtualBox virtual host network interface (device + driver) required • DHCP server can be configured using the GUI • Internet access • Fixed IP possible • Drawbacks • To access the guest from the host requires port forwarding configuration and might require an entry in the hosts hosts file for specific webinterfaces • Requires additional VirtualBox configuration to define the network / DHCP server Titel van de presentatie 14
  • 15. Host VirtualBox VirtualBox networking Host only Titel van de presentatie 15 Guest Internal IP:192.168.0.100 Hostinterface IP:10.10.10.2 Other host processes Guest Internal IP:192.168.0.101 Hostinterface IP:192.168.0.1 1515 Gateway/router InternalIP:10.10.10.1 ExternalIP:95.42.76.32
  • 16. VirtualBox networking Host only • VirtualBox creates a host interface (a virtual device visible on the host). This interface can be shared amongst guests. Guests can access each other. • DHCP (Dynamic Host Configuration Protocol) requests on the interface are answered with an IP for the guest and address of the Host only adapter. The DHCP server can be configured using the VirtualBox GUI • The virtual host interface is not visible outside of the host. The internet cannot be accessed via this interface from the guest. • The host can access the guests by IP. Port mappings are not needed. Titel van de presentatie 16
  • 17. VirtualBox networking Host only Titel van de presentatie 17 VirtualBox configuration Guest configuration
  • 18. VirtualBox networking Host only • Benefits: • Guests can access each other • You can create separate guest networks • DHCP server can be configured using the GUI • Fixed IP possible • Drawbacks • To access the guest from the host requires port forwarding configuration and might require an entry in the hosts hosts file for specific webinterfaces • Requires additional VirtualBox configuration to define the network / DHCP server • VirtualBox virtual host network interface (device + driver) required • No internet access Titel van de presentatie 18
  • 19. VirtualBox networking Bridged Titel van de presentatie 19 Host VirtualBox Guest 1 Hostinterface IP:10.10.10.2(host) IP:10.10.10.3(Guest1) IP:10.10.10.4(Guest2) Other host processes Guest 2 Gateway/router InternalIP:10.10.10.1 ExternalIP:95.42.76.32
  • 20. VirtualBox networking Bridged • The guest uses a host interface. On the host interface a net filter driver is applied to allow VirtualBox to send data to the guest. This requires a so-called promiscuous mode to be used by the adapter. Promiscuous mode means the adapter can have multiple MAC addresses. Most wireless adapters do not support this. In that case VirtualBox replaces the MAC address of packages which are visible to the adapter. • An external DHCP server is used. Same way the host gets its IP / gateway. No additional configuration required. It might not work if the DHCP server only allows registered MACs (some company networks) • Easy access. The guest is directly available from the network (every host) the host is connected to. Port mappings are not required. The host can access the guests by IP. Guests can access the host by IP. Titel van de presentatie 20
  • 21. VirtualBox networking Bridged Titel van de presentatie 21 Guest configuration
  • 22. VirtualBox networking Bridged • Benefits: • Guests can access each other • Host can access guests and guests can access the host. Anyone on the host network can access the guests • No virtual DHCP server needed • Easy to configure / use • Same access to internet as the host has • Drawbacks • Guests can’t be split into separate networks (not isolated) • Sometimes doesn’t work; dependent on external DHCP server and ability to filter packets on a host network interface. Company networks might block your interface • No easy option for a fixed IP since host network is a variable • Not secure. The guest is exposed on the hosts network Titel van de presentatie 22
  • 23. VirtualBox networking Overview Titel van de presentatie 23 Guest → Host Guest ← Host Guest1 ↔ Guest2 Guest → Internet Guest ← Internet Host-only + + + – – Internal – – + – – Bridged + + + + + NAT – Port forwarding – + Port forwarding NAT Network – Port forwarding + + Port forwarding
  • 24. VirtualBox networking Case 1: ELK stack for learning purposes • I’m trying out the new version of the ELK stack (Elasticsearch, Logstash, Kibana) • Requirements: • I do not require internet access inside the guest • I want to access my guest from my host • I do not want my guest to be accessible outside of my host • I do not want to manually configure port mappings Which networking solution should I choose? Titel van de presentatie 24 Solution: Host only adapter
  • 25. VirtualBox networking Case 2: SOA Suite for a security workshop • I’m using Oracle SOA Suite for a security workshop SOA Suite consists of 3 separate VMs, DB, Admin Server, Managed Server • Requirements: • The VMs require fixed (internal) IPs • The VMs need to be able to access each other • Course participants need to call my services from the same network • I only want to expose specific ports Which networking solution should I choose? Titel van de presentatie 25 Solution: NAT network or NAT + Host only
  • 26. VirtualBox networking Case 3: Distributing a VM for a course • I’ve created an Ubuntu / Spring Tool Suite VM for a course. The VM will be distributed to participants. • Requirements: • The VM to distribute requires internet access. During the course several things will need to be downloaded • I am unaware of the VirtualBox created interfaces present on the host machines and don’t want the participants to manually have to select an adapter • I want the participants to do as little networking configuration as possible. VirtualBox networking is not the purpose of this course. Which networking solution should I choose? Titel van de presentatie 26 Solution: NAT
  • 27. VirtualBox networking Case 4: Running a server inside a VM • I’ve created a server inside a VM which hosts an application. • Requirements: • The MAC of the VM is configured inside the routers DHCP server so it will always get the same IP. Use the external DHCP server to obtain an IP • The application will be used by (and thus needs to be accessible for) different people on the network. • The application uses many different ports for different features. These ports change regularly. Some features use random ports. Manual port mappings are not an option • The application accesses different resources (such as a print server) on the hosts network Which networking solution should I choose? Titel van de presentatie 27 Solution: Bridged