论坛升级后通告

论坛注册须知

NetEmu社区 FAQ

NetEmu招募新版主

企业IT架构选型选购与应用

中小企业轻松建网实操攻略

论坛强烈声明

广告招租QQ:1164258114

返回列表 回复 发帖

[原创] 增加-net udp

添加了-net udp网络模式,参看了mmm123的pemu源码.所以方法跟pemu的一样
  1. /home/bzzjh/newqemu/bin/qemu -m 256 -hda junos.vmdk -boot c -localtime -net nic,vlan=4,macaddr=00:aa:00:00:02:04,model=i82559er -net udp,vlan=4,sport=10000,dport=10001,daddr=127.0.0.1 -serial telnet::1007,server -kernel-kqemu
复制代码
将附件中的configure文件覆盖之.将net_udp.c文件添加至qemu-snapshot-2007-09-16_05文件内,覆盖vl.c
记住myios修改的eepro100.c也覆盖进去

然后编译
注意只需要 --target-list=i386-softmmu即可.当然configure时不加也行,但是太费时间了
另外 -net pcap ,-net lcap都没有加进去,因为没有作用
注意下载此qemu:
http://qemu-forum.ipi.fi/qemu-snapshots/qemu-snapshot-2007-09-16_05.tar.bz2
附件: 您所在的用户组无法下载或查看附件
发个测试图
QEMU 参数见1楼
.net文件:
  1. autostart = false
  2. workingdir =/home/bzzjh/temp

  3. [localhost]

  4.     [[3640]]
  5.     image = /home/bzzjh/IOS/C3640/c3640-js-mz.124-10.bin
  6.     ram = 128
  7.     idlepc = 0x6041f880
  8.    confreg = 0x2102
  9.    workingdir =/home/bzzjh/temp

  10. [[router R0]]
  11. model=3640
  12. console=1008
  13. slot0 = NM-1FE-TX
  14. fa0/0=NIO_udp:10001:127.0.0.1:10000
复制代码
附件: 您所在的用户组无法下载或查看附件
好!。不过我不会编译。。。。。。。。。。。。。。。。。。一make就大堆报错。。。(原版的qemu)
什么错误?
支持!
顶啊,楼主和myios,解决一下启动命令中tap卡和olive中网卡顺序不对应的问题嘛。
能在Windows下面编译了运行吗???怎么遍?装个cygwin再像Linux下面那样做吗?

我现在在VMware里装了ubuntu,再跑qemu。。。。效率太低了。。。又在外边出差,不敢重装系统。。。

之前在论坛里下的那个juniper。exe也用不了,方法应该是对了的(原版的qemu-windows-0.9.0,再把juniper.exe放进去),但一启动就报错,说这个程序即将关闭。不知这个是否和XP的版本有关(我的是XP Pro Eng SP3,kernel32的版本和SP2的不同)
原帖由 flickxie 于 2007-10-2 22:13 发表
能在Windows下面编译了运行吗???怎么遍?装个cygwin再像Linux下面那样做吗?

我现在在VMware里装了ubuntu,再跑qemu。。。。效率太低了。。。又在外边出差,不敢重装系统。。。

之前在论坛里下的那个junipe ...
XP-VMWARE-UBUNTEU-QEMU-BSD-OLIVE

仰视一下
Netemu@gmail.com
QQ:247656
Netemu提问技巧
http://netemu.cn/bbs/thread-8031-1-1.html

回复 7# 的帖子

明天给出windows可执行文件
关键是ubuntu里面那个kqemu整不起来,速度慢得受不了。。。。在Win下直接qemu速度还不错的。

XP-VMWARE-UBUNTEU-QEMU-BSD-OLIVE  这样整了以后又经常出现microcodeuptime 234.22212>234.22100之类的东西。。。很是郁闷。。
原帖由 flickxie 于 2007-10-2 22:28 发表
关键是ubuntu里面那个kqemu整不起来,速度慢得受不了。。。。在Win下直接qemu速度还不错的。
编译kqemu
  1. sudo modprobe kqemu
  2. sudo mknod /dev/kqemu c 250 0
  3. chmod 666 /dev/kqemu
复制代码
每次重新启动都需要执行上面的命令
当然也可以加如到系统启动脚本里,这样每次开机都自动把kqemu模块加载的内核中去
在windows下编译和在linux下用的代码相同吗?楼主说的那个版本的snapshot已经下不到了,我用0928的似乎又不行。

$ ./configure --target-list=i386-softmmu
./configure: pkg-config: command not found
BIOS directory    /c/Program Files/Qemu
binary directory  /c/Program Files/Qemu
Source path       /home/flick/qemu
C compiler        gcc
Host C compiler   gcc
make              make
install           install
host CPU          i386
host big endian   no
target list       i386-softmmu
gprof enabled     no
profiler          no
static build      no
SDL support       yes
SDL static link   yes
mingw32 support   yes
Adlib support     no
CoreAudio support no
ALSA support      no
DSound support    no
FMOD support      no
OSS support       no
VNC TLS support   no
kqemu support     yes
Documentation     no


make到后边出现错误:
C:/msys/home/flick/qemu/eepro100.c: In function `nic_load':
C:/msys/home/flick/qemu/eepro100.c:1606: `s' undeclared (first use in this function)
C:/msys/home/flick/qemu/eepro100.c:1606: parse error before ')' token
C:/msys/home/flick/qemu/eepro100.c: In function `nic_save':
C:/msys/home/flick/qemu/eepro100.c:1696: `s' undeclared (first use in this function)
C:/msys/home/flick/qemu/eepro100.c:1696: parse error before ')' token
C:/msys/home/flick/qemu/eepro100.c: In function `nic_init':
C:/msys/home/flick/qemu/eepro100.c:1774: `d' undeclared (first use in this function)
C:/msys/home/flick/qemu/eepro100.c:1775: `s' undeclared (first use in this function)
C:/msys/home/flick/qemu/eepro100.c:1779: parse error before ')' token
C:/msys/home/flick/qemu/eepro100.c:1791: warning: implicit declaration of function `eeprom93xx_new'
C:/msys/home/flick/qemu/hw/usb.h: At top level:
C:/msys/home/flick/qemu/eepro100.c:282: warning: `compute_mcast_idx' defined but not used
make[1]: *** [eepro100.o] Error 1
make[1]: Leaving directory `/home/flick/qemu/i386-softmmu'
make: *** [subdir-i386-softmmu] Error 2
貌似刚才eepro100.c的地方放错了。。。


gcc  -g -o qemu.exe vl.o osdep.o readline.o monitor.o pci.o console.o loader.o isa_mmio.o cutils.o host-utils.o block.o block-raw.o block-cow.o block-qcow.o aes.o block-vmdk.o block-cloop.o block-dmg.o block-bochs.o block-vpc.o block-vvfat.o block-qcow2.o block-parallels.o irq.o tap-win32.o i2c.o smbus.o scsi-disk.o cdrom.o lsi53c895a.o usb.o usb-hub.o usb-linux.o usb-hid.o usb-ohci.o usb-msd.o usb-wacom.o eeprom93xx.o eepro100.o ne2000.o pcnet.o rtl8139.o ide.o pckbd.o ps2.o vga.o sb16.o es1370.o dma.o audio.o noaudio.o wavaudio.o mixeng.o sdlaudio.o wavcapture.o fdc.o mc146818rtc.o serial.o i8259.o i8254.o pcspk.o pc.o cirrus_vga.o apic.o parallel.o acpi.o piix_pci.o usb-uhci.o smbus_eeprom.o vmmouse.o vmport.o vmware_vga.o gdbstub.o sdl.o x_keymap.o vnc.o d3des.o slirp/cksum.o slirp/if.o slirp/ip_icmp.o slirp/ip_input.o slirp/ip_output.o slirp/slirp.o slirp/mbuf.o slirp/misc.o slirp/sbuf.o slirp/socket.o slirp/tcp_input.o slirp/tcp_output.o slirp/tcp_subr.o slirp/tcp_timer.o slirp/udp.o slirp/bootp.o slirp/debug.o slirp/tftp.o libqemu.a  -lm -lz -lwinmm -lws2_32 -liphlpapi -L/mingw/lib -lmingw32 -lSDLmain -lSDL -mconsole  
slirp/misc.o(.text+0x0): In function `inet_aton':
C:/msys/home/flick/qemu/slirp/misc.c:75: multiple definition of `inet_aton'
vl.o(.text+0):C:/msys/home/flick/qemu/vl.c:217: first defined here
make[1]: *** [qemu.exe] Error 1
make[1]: Leaving directory `/home/flick/qemu/i386-softmmu'
make: *** [subdir-i386-softmmu] Error 2


改放到hw里。。。。然后make的时候出现上面的错误。。。。
要不楼主把qemu-snapshot-2007-09-16_05.tar.bz2发上来??应该也不太大。网上下不到了。
一楼发的源码是我上次在我的LINUX机可用的,但是我今天将它移植到windows却发现是有问题的.于是我作了一下修改,编译后测试udp可以工作.文件见附件. 需要将vl.c修改一下(见附件) 另外我还可能继续修改以支持 -net pcap模式,也会尝试把它加入到windows版的pemu中去(windows版的pemu,pcap无法效) 注意可能在运行的时候会出现qemu.exe 错误的提示,然后导致关闭,前天论坛好象有朋友碰到了这个问题.可以把-m 值调整一下,或高或低.
如果你分别在win和linux下都试过,你会发现win下ping延迟比linux下高的多.
附件: 您所在的用户组无法下载或查看附件
make 通过了。。。最后那个make install到底install到哪里去了?qemu.exe倒是找到了,其他附属的东西呢?我拿来启动还是说遇到错误要关闭。
如果你用的是MinGW
C:\Program Files\QEMU下

提示错误需要关闭,这个问题比较奇怪.我暂时没找到是什么原因.
你可以修改一下-m 内存的大小来解决.
我已经运行过了.可用..只是偶尔会报错.大至上修改-m就可以了..
不过如果你指的是缺失.dll文件,那就需要拷贝相应dll文件到文件内
哦!
应该是这个原因
我使用的SDL.dll 是MinGW官方提供.
刚才将qemu提供的SDL.dll覆盖进去,没有再发生报告错误关闭的情况了..
附件: 您所在的用户组无法下载或查看附件
唉。。。用你发的这个还是不行。。。还是一启动就关闭。。。郁闷了。。。。内存改来改去都没用。。。。咋我编出来的这个有5.77M哦。。。
恩 的确是这样的.
windows下确实不稳定.
我做了个试验,开启动超过2个 也就是3个到4个的网卡.QEMU很容易报错关闭.我不知道是不是跟我笔记本的系统关系
不过LS也碰到这样的情况.并且不紧紧只是我编译的这个版本的问题,我拿官方的qemu测试也会报错关闭(开4个网卡)
今天上午又试了一下, 关闭杀毒软件或者在启动OLIVE的时候不要运行其它的应用程序.不要做以外的其他操作.在启动OLIVE的时候是相当占资源的.
我发张图吧..反正windows是不稳定的.ping值跟上面的图作下比较就知道了.
附件: 您所在的用户组无法下载或查看附件
搞这东西还是要Linux才好阿。。。。。在Win下和Lin下速度完全没法比

回去了还是老老实实的用真机。。。。。

qemu还是不那么完善。。。。。
顶!!! 可以和7200模拟器通信了!!!
用udp好像不是很稳定。不过确实解决了大问题。以后安装linux了。
这个后续还有吗?大家有在测试没有?
Netemu@gmail.com
QQ:247656
Netemu提问技巧
http://netemu.cn/bbs/thread-8031-1-1.html
昨天试过了,可以将FXP0使用UDP和72模拟器通信, 然后FXP1和FXP2用TAP方式通信。 并在FXP1和FXP2之间启用虚拟路由器。
在单位里Qemu在XP下做这个不是很稳定,PC:PD3.0 1.5GDDR2,在家里用Windows2003又超级的稳定,同一个程序,可能与windows2003的内存管理有关吧。
返回列表