图片来自网络,如有侵权,联系我删除!
一、实验环境
Vmware WorkStation15
Red Hat 9.0
vim 编辑器
gcc编译环境
二、网卡模式讲解
网卡有4种工作模式:
1)广播模式(Broad Cast)
其物理地址是0xffffff的广播帧,工作在广播模式的网卡就收广播帧。
PS:这也是我一开始写好程序运行后,只收到了SOURCE IP为255.255.255.255的原因
2)多播模式(MultiCast)
多播传送地址作为目的物理地址的帧可以被组内的其它主机同时接收,而组外主机却接收不到。但是,如果将网卡设置为多播传送模式,它可以接收所有的多播传送帧,而不论它是不是组内成员。
3)直接模式(Direct)
直接模式下的网卡只接收目地址是自己 Mac地址的帧
4)混杂模式(Promiscuous)
混杂模式下的网卡接收所有的流过网卡的帧,这也是我们的程序运行的原理
三、更改网卡模式
网上大多给出了无线网卡的混杂模式,这里给一下eth0的有线网卡的更改:
ifconfig eth0 promisc
运行可能会出错,记得先关掉网卡,设置完再打开网卡:
ifconfig eth0 down
ifconfig eth0 up
四、VMware的虚拟机网络配置讲解
1.桥接模式(Bridged)
桥接模式顺利配置应该:
虚拟机和真实主机IP地址不同,但需要位于同一子网下,子网掩码相同,默认网关相同。
该实验也需要在桥接模式下进行工作,另外,注意当切换模式后,Red Hat系统使用以下命令重启一下网卡:
service network restart
--------------------------------------------------
PS:更新 2019年3月29日11:12:14
部分Red Hat虚拟机为:
/etc/init.d/network restart
--------------------------------------------------
2. 网络地址转换模式(NAT)
因为校内采用DHCP上网,RED HAT 版本过早,连不上网。所以配置了NAT模式,可以用主机进行上网。
PS:这样我就能上ftp了,把我的文件下载下来。
配置的时候注意:
VMware里:
编辑 -> 虚拟网络配置 -> 选中VMnet8
NAT设置
DHCP设置
因为RED HAT版本太老,不能DHCP到地址,所以手动配置
①虚拟机IP地址应在 起始IP和结束IP之间,
②默认网关应该和上图设置一样
③子网掩码也和上图一样
3. 仅主机模式(Host-only)
其实我并没有用到,但是看了前两个模式,趁机把这一个也学习一下。
补充,NAT连不上,我就点了一下这个 已连接,然后service network restart一下,就可以连接了
五、代码
其实挺简单的,环境已经说了,代码最好自己写一写!
PS:我的报告在下面,但是里面可能有几个小错误。可能要自己改改
https://download.csdn.net/download/boyinc0de/11052453