`
haoningabc
  • 浏览: 1482689 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

socket的方式使用qemu建立虚拟机

阅读更多
qemu的-net参数
-net nic 必须有,基本配置model=网卡类型,
-net tap 使用tap设备
参考

NAT的方式使用qemu建立虚拟机:http://haoningabc.iteye.com/blog/2306952
桥接的方式使用qemu建立虚拟机:http://haoningabc.iteye.com/blog/2306736

-net user 使用qemu自身实现

-net socket 两种 tcp方式和udp的方式
tcp使用listen=192.168.139.85:1234
其他vm使用 connect=192.168.139.85:1234
udp的方式使用多播地址 mcast=224.0.0.5:1234
在IPv4中,它历史上被叫做D类地址,一种类型的IP地址,它的范围从224.0.0.0到239.255.255.255,或,等同的,在224.0.0.0/4。在IPv6,多播地址都有前缀ff00::/8。但是注意,224.0.0.0被保留,不能赋给任何多播组。
########################
例子:
使用tcp的方式:
一个vm使用-net socket,listen=
qemu-system-i386 -kernel /root/jslinux/obj/linux-x86-basic/arch/i386/boot/bzImage -drive file=hda_hasbacking_file.qcow2,if=ide,cache=none -append "console=ttyS0 root=/dev/sda rw rdinit=/sbin/init notsc=1"  -nographic -boot order=dc,menu=on -net nic,vlan=0,macaddr=52:54:00:12:34:22,model=e1000,addr=08 -net socket,name=mysock1,listen=192.168.139.85:1234

其他vm使用-net socket,connect=
qemu-system-i386 -kernel /root/jslinux/obj/linux-x86-basic/arch/i386/boot/bzImage -drive file=hda_hasbacking_file1.qcow2,if=ide,cache=none -append "console=ttyS0 root=/dev/sda rw rdinit=/sbin/init notsc=1"  -nographic -boot order=dc,menu=on -net nic,vlan=0,macaddr=52:54:00:12:34:23,model=e1000,addr=08 -net socket,name=mysock2,connect=192.168.139.85:1234 

在mysock1的vm中
ip link set eth0 up
ifconfig eth0 10.0.2.2 netmask 255.255.255.0

在mysock2的vm中
ip link set eth0 up
ifconfig eth0 10.0.2.3 netmask 255.255.255.0

测试可以互相ping通
切换到monitor模式
ctrl+a c
(qemu) info network
hub 0
 \ hub0port1: mysock1: index=0,type=socket,socket: connection from 192.168.139.85:42941
 \ hub0port0: e1000.0: index=0,type=nic,model=e1000,macaddr=52:54:00:12:34:22
(qemu) 


使用udp的方式:

多台机器可以使用不同的"-net nic,macaddr="和"-net socket,name="
qemu-system-i386 -kernel /root/jslinux/obj/linux-x86-basic/arch/i386/boot/bzImage -drive file=hda_hasbacking_file.qcow2,if=ide,cache=none -append "console=ttyS0 root=/dev/sda rw rdinit=/sbin/init notsc=1"  -nographic -boot order=dc,menu=on -net nic,vlan=0,macaddr=52:54:00:12:34:22,model=e1000,addr=08 -net socket,name=mysock1,mcast=192.168.139.85:1234

ip设置同上,也可以ping通
切换monitor模式
(qemu) info network
hub 0
 \ hub0port1: mysock1: index=0,type=socket,socket: mcast=224.0.0.5:1234
 \ hub0port0: e1000.0: index=0,type=nic,model=e1000,macaddr=52:54:00:12:34:22
(qemu) 

分享到:
评论

相关推荐

    QEMU虚拟机网卡及网络配置

    ### QEMU虚拟机网卡及网络配置详解 #### 基本概念 QEMU是一款开源的虚拟机模拟器,能够模拟完整的系统环境,包括处理器、内存、存储设备以及网络设备等。为了使虚拟机能够正常地与其他物理或虚拟机进行通信,QEMU...

    vm-manager:一个轻量级的单机qemu kvm虚拟机管理器 | a lignt qemu kvm vm manager for single machine

    一个轻量级的单机qemu kvm虚拟机管理器 使用说明 请将config-tpl.toml修改后保存为config.toml放在程序的工作目录下 请自行修改vm-manager-systemd-tpl.service文件后放置于systemd的service目录 关于使用ovs-dpdk ...

    qmp.c.zip_QMP_qemu

    "qmp.c"文件的分析揭示了QMP协议在QEMU内部的工作原理,为开发者和系统管理员提供了深入理解QEMU虚拟机管理的窗口。通过熟悉和掌握QMP,我们可以更有效地利用虚拟化技术,提升数据中心的运维效率和可靠性。

    qemu-0.13.0(编译过全处理器支持)

    QEmu虚拟机 做嵌入式开发的朋友试试 调试内核很方便 QEMU emulator version 0.13.0, Copyright (c) 2003-2008 Fabrice Bellard usage: qemu [options] [disk_image] 'disk_image' is a raw hard disk image for ...

    基于开源虚拟机的模拟设备的设计与实现

    基于QEMU的模拟设备的实现有两个方面的难点:1)QEMU虚拟机的工作原理及其I/O框架,2)模拟设备的之间的通信方式。在研究了QEMU虚拟机的工作原理及其I/O框架基础上,设计并实现了模拟QBUS设备之间,基于socket设备组...

    Qemu-1.0.1 for windows

    Qemu 1.0.1 Windows QEMU emulator version 1.0.1, Copyright (c) 2003-2008 Fabrice Bellard usage: qemu [options] [disk_image] 'disk_image' is a raw hard disk image for IDE hard disk 0 Standard options...

    linux下组播遇到的问题及解决办法3.pdf

    4. 虚拟机如何添加硬盘:在 Linux 中,可以使用 qemu 命令来添加虚拟机硬盘。 5. 开机后自动启动 samba 服务:在 Linux 中,可以使用系统服务来开机自动启动 samba 服务。 6. ln 建立链接:在 Linux 中,可以使用 ln...

    经典arm教程11!!!!!!!!!!!!!

    - **QEMU内置GDB stub**:QEMU支持直接通过socket连接GDB进行调试,这一特性使得开发者能够轻松地对运行中的Linux内核进行调试。 - **调试步骤**: 1. 编译带有调试信息的Linux内核。 2. 使用QEMU启动内核并打开...

    socketiv:SOCKET-for-Inter-Vm,高性能VM间套接字,使用直接共享内存

    插座IV 用于Linux间KVM... SocketIV与Linux KVM虚拟机管理程序兼容,当前使用QEMU IVSHMEM设备作为VM间共享内存后端。要求设置如何使用漏洞去做笔记该存储库包含来自正在进行的开发的临时源,该临时源将不会构建。

    Anti-vm-in-android

    / dev / socket / qemud / dev / qemu_pipe * 4。默认号码 某些仿真器具有默认编号。 * 5.IMSI号 某些仿真器具有默认的IMSI编号。 * 6。构建属性 有一个Build.java文件,它具有一些公共变量。 我们可以检查那些字符...

    KVM 安装配置和常见操作.docx

    - `virsh edit`: 修改克隆后的虚拟机配置文件,包括VNC端口、socket路径、虚拟机名称、UUID和MAC地址。 克隆后,确保虚拟机的配置文件中所有标识符(如VNC端口、UUID和MAC地址)都是唯一的,否则可能导致启动问题。...

    KVM 安装配置和常见操作 (2).docx

    使用`virt-install`命令创建虚拟机,例如创建一个名为`VM-centos7`的CentOS 7虚拟机,分配1GB内存,1个vCPU,并使用VNC进行图形化安装: ``` virt-install --name=VM-centos7 --ram 1024 --vcpus=1 --cdrom /KVM...

    OpenStack之KVM优化 一

    3. **流量控制(Traffic Control)**:使用流量控制工具来管理和优化虚拟机的网络带宽,防止网络拥塞。 综上所述,KVM虚拟化环境下的性能优化是一个多方面的工作,需要根据实际应用场景,对CPU、内存、磁盘和网络这...

    vnc源码资源参考

    2. **网络通信**:VNCViewer使用TCP/IP进行连接,源码中会包含socket编程,处理连接建立、数据传输和断开连接等操作。 3. **图像编码与解码**:为了高效地传输屏幕内容,VNC使用了多种压缩算法,如Zlib和 Tight ...

    Virtio网络的演化之路.pdf

    Vring通过PCI传输协议实现的控制平面确保前后端的正常通信,而数据平面则使用共享内存实现的Vring进行虚拟机与主机之间的通信。例如,当virtio-net驱动发送网络数据包时,数据会被放入Available Ring,触发通知,...

    LogicLog Adb.exe

    [Unity3D] android adb ...adb的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行Eclipse时adb进程就会自动运行。 关于Adb环境搭配 : ...

    opendeskapp.zip

    在OpenStack中,QEMU-KVM虚拟机管理程序支持SPICE,使得用户可以通过客户端软件实现对虚拟机的图形化操作。 "opendeskapp"这个Python应用程序,就是利用SPICE协议来实现与OpenStack环境的连接,让用户能够远程登录...

    Linux内核虚拟化KVM详解

    针对KVM的基准测试结果显示,其性能与“原生”(non-virtualized)系统非常接近,尤其是在使用了QEMU加速模块(kqemu)的情况下。例如,在Windows XP的安装速度测试中,KVM的表现优于纯QEMU模拟器,并且接近或达到了...

    Python-实现在各种CPU架构上提供自动化Linux恶意软件分析

    这可能涉及到使用QEMU、KVM等虚拟化技术,或者专门的沙箱环境如Cuckoo Sandbox。Python可以用于控制这些虚拟机并收集日志。 4. **反混淆**:恶意软件可能使用混淆技术来逃避分析,反混淆是恢复原始代码的过程。...

    嵌入式Linux应用程序开发详解

    1. **环境搭建**:安装交叉编译工具链,配置开发环境,如设置交叉编译路径、建立虚拟机或使用QEMU进行模拟测试。 2. **驱动程序开发**:理解Linux内核模型,编写设备驱动程序,以便与硬件交互。 3. **应用程序接口...

Global site tag (gtag.js) - Google Analytics