我的VMware版本是8.0.3。其他版本的设置应该大致相同。

1、注意我们的网络模式是Bridge

2、我们的网卡设置

3、目标虚拟机(Linux)的IP

4、我的主机的IP地址

5、网络调试助手的设置

6、上一段用来调试网络的代码。这段代码使用UDP进行通信,主要的作用是应答式的,一回一答。

#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <stdio.h>
#define BUFLEN 255  int main(int argc, char **argv)
{  struct sockaddr_in peeraddr, localaddr;  int sockfd;  char recmsg[BUFLEN+1];  int socklen, n;  if(argc!=5){  printf("%s <dest IP address> <dest port> <source IP address> <source port>\n", argv[0]);  exit(0);  }  sockfd = socket(AF_INET, SOCK_DGRAM, 0);  if(sockfd<0){  printf("socket creating err in udptalk\n");  exit(1);  }  printf("IP address Checking!\n");  socklen = sizeof(struct sockaddr_in);  memset(&peeraddr, 0, socklen);  peeraddr.sin_family=AF_INET;  peeraddr.sin_port=htons(atoi(argv[2]));  if(inet_pton(AF_INET, argv[1], &peeraddr.sin_addr)<=0){  printf("Wrong dest IP address!\n");  exit(0);  }  memset(&localaddr, 0, socklen);  localaddr.sin_family=AF_INET;  if(inet_pton(AF_INET, argv[3], &localaddr.sin_addr)<=0){  printf("Wrong source IP address!\n");  exit(0);  }  printf("try to bind local address \n");  localaddr.sin_port=htons(atoi(argv[4]));  if(bind(sockfd, &localaddr, socklen)<0){   printf("bind local address err in udptalk!\n");  exit(2);  }  printf("Please Type Some Message To Server\n");    if(fgets(recmsg, BUFLEN, stdin) == NULL) {printf("get nothing exit\n"); exit(0);}  //    printf("end of fgets \n");  if(sendto(sockfd, "HELLO", strlen("HELLO"), 0, &peeraddr, socklen)<0){  printf("sendto err in udptalk!\n");  exit(3);  }  printf("end of sendto \n");  printf("start of recv&send message loop!\n");  for(;;){  /*recv&send message loop*/  printf("Waiting For Message...!\n");  n = recvfrom(sockfd, recmsg, BUFLEN, 0, &peeraddr, &socklen);  if(n<0){  printf("recvfrom err in udptalk!\n");  exit(4);  }else{  recmsg[n]=0;  printf("peer:%s\n", recmsg);    }  printf("Please Type Some Message To Server\n");    if(fgets(recmsg, BUFLEN, stdin) == NULL) exit(0);  if(sendto(sockfd, recmsg, strlen(recmsg), 0, &peeraddr, socklen)<0){  printf("sendto err in udptalk!\n");  exit(3);  }  }
}

下图是以上代码运行的实例

其中./udptalk 192.168.41.24 2000 192.168.92.128 2000  是启动的命令。在应用这段代码的时候,把192.168.41.24替换成要接受消息的主机(destination)。第一个2000是目标端口。192.168.92.128是本机地址,第二个2000是发送端口。

注意事项:

你要确保默认网关是有效的,不然虚拟机和主机的通信就会失败。比如说你的网关设的是局域网内的一台主机,但是跟局域网相连的网线又被你拔了,这时候,虚拟机和主机的通信就会失败。

其实最好将虚拟机的所用的虚拟网卡的网关设成真实主机的地址,这样就不用再借助一台主机来充当网关。(如下图所示)

本文转自陈哈哈博客园博客,原文链接http://www.cnblogs.com/kissazi2/archive/2013/06/14/3136153.html如需转载请自行联系原作者

kissazi2

Bridge网络模式下Linux虚拟机和主机进行通信相关推荐

  1. virtualbox 创建桥接网络_virtualbox下linux虚拟机的网络配置——桥接网络

    为了防止着捉急的记忆力,我还是记录下吧. 虚拟机的基本配置: 在virtualbox下的Linux系统下配置网络的方法: 首先打开虚拟机设置窗口,进入网络选项卡,将网络连接1中的连接方式从默认的NAT ...

  2. Linux 虚拟机和主机互通 [万能方法]

    VMware Linux 虚拟机和主机互通 [万能方法] 前言:诸如以下问题,解决问题的思路都是一样的,看完此文后都能找到答案: 主机为何 ping 不通 虚拟机?请检查是否在同一网段?Linux 防 ...

  3. VMware虚拟机 linux NAT网络模式下 网关地址默认为192.168.1.2

    VMware虚拟机 linux NAT网络模式下 网关地址默认为192.168.1.2   默认0-2端口都被占用 不能将网关地址强制设置为192.168.1.1       因为.1被占用 网关地址 ...

  4. 虚拟机linux和主机网络连接,linux虚拟机中和主机三种网络连接方式的区别

    linux虚拟机中和主机三种网络连接方式的区别 在介绍网络模式之前,关于网络的几个简单命令的使用 ifup eth0 //启动网卡eth0 ifdown eth0 //关闭网卡eth0 /etc/ne ...

  5. WIN10上使用VM部署虚拟机NAT网络模式下域名解析失败

    虚拟机安装 LINUX 在 NAT 网络模式下域名解析失败 问题现象: 在本地物理机VM上部署LINUX系统,ping 百度的域名 www.baidu.com 失败,但是ping百度的IP(39.15 ...

  6. 配置VMware Workstation 主机模式下让虚拟机上网设置详细

    配置VMware Workstation 主机模式下让虚拟机上网设置详细 1.在本地连接中,把网络共享给虚拟机的VMware Network Adapter VMnet1这个网口 2.设置好VMwar ...

  7. 【VMware】虚拟机NAT网络模式下网速慢怎么办

    前言: 最近在研究渗透测试,重装了许久不用的VMware,下了个kali2022玩玩,但在实际使用过程中发现网络时常有问题,不稳定,而且有时候会解析不了域名,一开始以为是域名服务DNS没有配置好,但是 ...

  8. vmware中NAT模式下,虚拟机与主机能ping通 为什么虚拟机不能上网

    vmware中NAT模式下,虚拟机与主机能ping通 为什么虚拟机不能上网? 方案一: 1.把虚拟机的网络连接设置为桥接或NAT都可以的 2.把虚拟机和主机设置为同一网段 主机 网络邻居属性 3.双击 ...

  9. VMware下Linux虚拟机安装及没有内网ip的三种解决方案

    VMware软件下Linux虚拟机安装参考:https://www.cnblogs.com/fu-yong/p/9025299.html CentOS 7.x默认安装好之后是没有自动开启网络连接的,所 ...

最新文章

  1. 禅道Docker安装包发布
  2. 参加web前端开发培训具体要学什么内容
  3. CNN边缘检测--Richer Convolutional Features for Edge Detection
  4. jsfiddle网站介绍
  5. 离线轻量级大数据平台Spark之MLib机器学习库概念学习
  6. SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解
  7. wgs-84,gcj-02,bd-09的相互转换,高德,世界测量,百度坐标系的相互转换,坐标系转换
  8. MariaDB5.5.32 绿色版下载安装一条龙
  9. Drive Scope for mac(硬盘检查分析工具)
  10. 凸优化第六章逼近与拟合 6.4鲁棒逼近
  11. 郝斌C语言开篇 C语言简介
  12. 计算机编码怎么记忆,怎样有效记忆数字编码?
  13. R 回归 虚拟变量na_R语言 | 回归分析(一)
  14. 禅道二次开发(一):开发环境配置
  15. ceph web监控管理平台calamari
  16. 虚拟机无法连接到图形服务器,vmware vsphere client无法连接到服务器
  17. java Excel导出功能之 固定列表格
  18. 一文了解二进制和CPU工作原理
  19. 《数字图像处理》读书笔记2:数字图像处理基础
  20. Python3中print函数的换行

热门文章

  1. vs 中大括号之间垂直虚线显示
  2. tomcat 初始管理用户和密码
  3. Hibernate缓存
  4. 用VirtualBox在XP环境下虚拟Ubuntu的过程
  5. JAVA对象转为Java String的几种常用方法
  6. python一行代码的威力
  7. 计算机网络控制系统,计算机网络远程控制系统的应用研究(原稿)
  8. 【python教程入门学习】Python实现自动玩贪吃蛇程序
  9. Python高级爬虫开发,高难度JS解密教程,绝地求生模拟登陆!
  10. 斯皮尔曼相关系数范围_数据的相关系数