VMware Workstation 虚拟机里的网络设置(ubuntu、readhat)

简介: 这篇文章介绍在VMware Workstation Pro 虚拟机里里如何配置网络。 以ubuntu16.04、readhat6.3为例。

1. 前言

一般Linux编程时,经常都会使用虚拟机跑Linux系统,VMware Workstation Pro 虚拟机里的系统不管是Linux、还是windows、还是其他系统想要上网就必须配置好虚拟网络连接方式。VMware Workstation 支持共享、桥接,选择网卡的方法自定义上网方式。

如果虚拟机里的系统想要拥有一个独立的IP地址(路由器认为是一台新设备),那么就需要设置成桥接模式。

如果虚拟机里的系统只想要上外网,而连接的WIFI又需要输入密码,或者像校园网这种,一个账号不能多台设备同时使用这种,那么就设置成NAT共享方式即可。

想要在虚拟机你跑的系统愉快的上网,进行各种网络编程、服务器搭建,那么第一步首先得先把系统接入网络才行。

下面章节就介绍ubuntu16.04、readhat6.3系统下如何配置网络实现网络连接。

2. ubuntu 16.04 设置网络连接方式

2.1 打开虚拟机的网络编辑器

img

2.2 选择桥接电脑当前连接网络的网卡

比如: 当前电脑使用有线连接路由器,那么就选择桥接到有线网卡。如果当前电脑使用的是WIFI方式连接路由器,那么就选择桥接到无线网卡。

image-20211202140019257

如果不知道自己网卡的名字是哪一个怎么办?

可以在windows下打开网络适配器进行查看。

image-20211202140032972

image-20211202140055849

image-20211202140117912

2.3 设置虚拟机的联网方式

image-20211202140145638

image-20211202140200409

image-20211202140220072

2.4 测试网络是否畅通

image-20211202140249862

image-20211202140309408

image-20211202140328210

image-20211202140345585

image-20211202140401526

3.5 编写代码测试网络通信

使用代码创建一个TCP服务器,然后windows系统通过网络调试助手连接进来,进行通信。

#include <stdio.h>
#include <sys/types.h>          /* See NOTES */
#include <sys/socket.h>
#include <stdlib.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/select.h>

/* According to earlier standards */
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>

/*
设置网卡的IP地址
$ sudo ifconfig eth0 192.168.1.23  

服务器创建流程:
1. 创建socket套接字(文件描述符)---类型open函数一样
2. 绑定端口号(创建服务器:提供端口号和IP地址)
3. 设置监听的客户端数量(设置待处理的队列最大缓存待连接的客户端数量)
4. 等待客户端连接(被动--阻塞): 多线程和多进程方式并发处理客户端连接。
5. 实现通信(客户端连接成功)
*/
int main(int argc,char **argv)
{
    if(argc!=2)
    {
        printf("参数: ./tcp_server <端口号>\n");
        return 0;
    }
    /*1. 创建socket套接字*/
    int sockfd;
    sockfd=socket(AF_INET,SOCK_STREAM,0);
    if(sockfd<0)
    {
        printf("服务器:套接字创建失败.\n");
        return 0;
    }
    /*2. 绑定端口号*/
    struct sockaddr_in addr;
    addr.sin_family=AF_INET; //IPV4
    addr.sin_port=htons(atoi(argv[1])); //65535
    //addr.sin_addr.s_addr=inet_addr("192.168.2.16");
    addr.sin_addr.s_addr=INADDR_ANY; //本地所有IP地址 "0.0.0.0"
    if(bind(sockfd,(const struct sockaddr *)&addr,sizeof(struct sockaddr)))
    {
        printf("服务器:端口号绑定失败.\n");
        return 0;
    }
    /*3. 设置等待连接的客户端数量*/
    listen(sockfd,10);
    /*4. 等待客户端连接(被动--阻塞)*/
    struct sockaddr_in client_addr;
    socklen_t addrlen=sizeof(struct sockaddr_in);
    int client_sockfd; //客户端的套接字
    client_sockfd=accept(sockfd,(struct sockaddr *)&client_addr,&addrlen);
    if(client_sockfd<0)
    {
        printf("服务器:处理客户端的连接失败.\n");
        return 0;
    }
    /*5. 实现数据通信*/
    printf("连接上的客户端IP地址:%s\n",inet_ntoa(client_addr.sin_addr));
    printf("连接上的客户端端口:%d\n",ntohs(client_addr.sin_port));

    char buff[100];
    int cnt;
    while(1)
    {
        cnt=read(client_sockfd,buff,100);
        buff[cnt]='\0';
        printf("服务器接收的数据:%d,%s\n",cnt,buff);
        sleep(5);
    }
    /*6. 关闭套接字*/
    close(client_sockfd);
    close(sockfd);
    return 0;
}

3. RedHat 红帽6.3系统

3.1 设置网络

设置方法与ubuntu 系统一样。

image-20211202140446344

image-20211202140501355

image-20211202140514919

image-20211202140526372

image-20211202140538259

3.2 关闭防火墙

image-20211202140613370

目录
相关文章
|
13天前
|
存储 SQL 数据库
虚拟化数据恢复—Vmware虚拟机误还原快照的数据恢复案例
虚拟化数据恢复环境: 一台虚拟机从物理机迁移到ESXI虚拟化平台,迁移完成后做了一个快照。虚拟机上运行了一个SQL Server数据库,记录了数年的数据。 ESXI虚拟化平台上有数十台虚拟机,EXSI虚拟化平台连接了一台EVA存储,所有的虚拟机都存放在EVA存储上。 虚拟化故障: 工组人员误操作将数年前迁移完成后做的快照还原了,也就意味着虚拟机状态还原到数年前,近几年数据都被删除了。 还原快照相当于删除数据,意味着部分存储空间会被释放。为了不让这部分释放的空间被重用,需要将连接到这台存储的所有虚拟机都关掉,需要将不能长时间宕机的虚拟机迁移到别的EXSI虚拟化平台上。
92 50
|
9天前
|
网络协议 Linux
使用nmcli命令设置IP地址并排查网络故障
nmcli 是一个功能强大的网络管理工具,通过它可以轻松配置IP地址、网关和DNS,同时也能快速排查网络故障。通过正确使用nmcli命令,可以确保网络配置的准确性和稳定性,提高系统管理的效率。希望本文提供的详细步骤和示例能够帮助您更好地掌握nmcli的使用方法,并有效解决实际工作中的网络问题。
23 2
|
11天前
|
域名解析 网络协议 虚拟化
vmware 提供的三种网络工作模式
本文介绍了VMware虚拟机的三种网络工作模式:Bridged(桥接模式)、NAT(网络地址转换模式)和Host-Only(仅主机模式)。桥接模式将虚拟机与主机通过虚拟网桥连接,实现与物理网络的直接通信;NAT模式通过虚拟NAT设备和DHCP服务器使虚拟机联网;Host-Only模式则将虚拟机与外网隔离,仅与主机通信。此外,文章还简要介绍了网络相关的基础知识,包括主机名、IP地址、子网掩码、默认网关和DNS服务器。
31 3
|
29天前
|
Ubuntu Linux 虚拟化
Linux虚拟机网络配置
【10月更文挑战第25天】在 Linux 虚拟机中,网络配置是实现虚拟机与外部网络通信的关键步骤。本文介绍了四种常见的网络配置方式:桥接模式、NAT 模式、仅主机模式和自定义网络模式,每种模式都详细说明了其原理和配置步骤。通过这些配置,用户可以根据实际需求选择合适的网络模式,确保虚拟机能够顺利地进行网络通信。
|
1月前
|
安全 虚拟化 数据中心
Xshell 连接 VMware虚拟机操作 截图和使用
Xshell 连接 VMware虚拟机操作 截图和使用
49 4
|
1月前
|
Linux 虚拟化
vmware虚拟机安装2024(超详细)
vmware虚拟机安装2024(超详细)
294 6
|
1月前
|
Ubuntu 网络安全 数据安全/隐私保护
阿里云国际版如何设置网络控制面板
阿里云国际版如何设置网络控制面板
|
1月前
|
Ubuntu 编译器 开发工具
香橙派5Pro+虚拟机Ubuntu18.04交叉编译+Opencv4.7
香橙派5Pro+虚拟机Ubuntu18.04交叉编译+Opencv4.7
|
1月前
|
虚拟化 网络虚拟化 网络架构
虚拟机 VMware Workstation 16 PRO 的网络配置
虚拟机 VMware Workstation 16 PRO 的网络配置
|
2月前
|
KVM 虚拟化
KVM虚拟机的桥接网络
文章主要介绍了KVM虚拟机的NAT和桥接网络类型的工作原理、配置方法以及如何进行网络模式的切换。
44 3
KVM虚拟机的桥接网络