深度理解:VMware中Bridge和NAT的使用方法及注意事项
在做网络实验时,为了避免对本地系统的破坏,一般会考虑在虚拟机中进行。今天来介绍一下VMware这款虚拟机中关于网络设置方面的内容。
VMware创建虚拟机后,需要为虚拟机指定网络连接模式,在实际工作中,我使用Bridge和NAT模式比较多,以下是这两种模式下的使用方法及注意事项。
1) Bridge模式
使用方法:
当选择网络模式为Bridge模式时,虚拟机相当于直接连接到宿主机所在的网络,如果宿...
代码片段:Crypto++使用方法汇总
今天来说简单汇总一下著名C++编解码库Crypto++的使用方法,以下仅列出代码片段,详细的API解释请大家参考在Crypto++官网文档。
基本上这个库的调用方式比较少见,但是学会了其中一种,其他的算法函数也是可以融会贯通的。
1) AES加密:
string m_buf;
CryptoPP::AES::Encryption aes_encryption(m_key, CryptoPP::...
深度理解:了解一下域名clientHold和serverHold的区别
因最近没有提交域名实名材料,导致域名解析不生效,趁着这个机会,详细了解了一下clientHold和serverHold的区别。
首先需要弄明白这几个概念:
Domain Name Registrant:
The domain name registrant is the organization or individual registering the domain name. When you...
小技巧:在PHP中调用多条shell指令
有时候,在持续集成的过程中,需要通过网页在目标服务器上执行shell指令,今天就列举一个实例进行讲解。
比如,我们需要能通过网页将SVN update进行自动化,那么,可以在PHP中编写如下脚本:
<?php
// Run single system command
exec("ipconfig 2>&1", $output, $code);
...
小技巧:IIS提示如果应下载文件,请添加 MIME 映射
如果在IIS站点下放置一种类型的文件供用户下载,但是这个文件没有在IIS里建立MIME映射,则会提示如下错误:
HTTP 错误 404.3 – Not Found
由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
我们可以点击站点,在右侧中找到MIME类型,点进去后可以看到系统里已经定义了很多MIME类型映射,并且大部...
小技巧:Fedora17中设置静态IP地址
这两天在Fedora中碰到了设置静态IP的问题,在此将过程记录下来给有需要的朋友参考。
一. 配置静态IP步骤
1) 首先使用root账户登录。
2) cd /etc/sysconfig/network-scripts
3) vi ifcfg-eth0,内容如下:
HWADDR=11:22:33:44:55:66 // 网卡MAC地址
DEVICE=eth0 // 设备名称
TYPE=Ethern...
深度理解:路由器中虚拟服务器(端口映射)的使用
有时,我们需要跨越路由器直接访问路由器后面的局域网机器上提供的服务,如Web Page, FTP等,这个时候,路由器中内建的虚拟服务器功能可以实现这样的需求。
先看如下启用了虚拟服务器后网络架构:
LAN PC得到路由器下发的DHCP IP 192.168.1.10,路由器从公网得到WAN IP 172.18.1.100,如果外部主机Customer PC希望穿越路由器访问LAN PC上搭建的W...
小技巧:Fedora17中设置开机自启动程序
Fedora17于2012年5月30日正式发布,距今已经有5年,今天我们来讲讲如何在Fedora17中设置开机自启动程序。
1. 创建rc.local文件。
一般我们可以在/etc/rc.d/rc.local中加入我们需要开机自启动的程序,但是,Fedora17中没有这个文件。所以,第一步,我们需要手动创建这个文件。
# cd /etc/rc.d
# touch rc.local
# vi rc....
深度理解:双缓冲技术在MFC界面绘制中的运用
在MFC程序中绘制界面时,如果界面绘制工作比较久或界面结构比较复杂时,常常会出现闪烁的现象。原因有二:
1) MFC程序默认处理WM_ERASEBKGND消息时,会使用窗口类的画刷(通常是白色)将窗口背景擦除。
我们先来看看MSDN上关于WM_ERASEBKGND消息的说法:
WM_ERASEBKGND message
Sent when the window background must be...
实战经验:一种侦测对象重复删除的方法
我们可以在C++中使用new/delete来创建或删除对象,new/delete会调用底层的malloc/free系统函数。但是,如果对同一个对象执行一次以上的delete操作,结果将是undefined的。那我们如何来侦测对象的重复删除呢?
这里有一个思路,在一个类中定义一个const数据成员并在对象创建时初始化为一个特定的值,当对象被delete后,由于此值也会被销毁,可以借此判断对象是否依然...