Tag: DHCP预览模式: 普通 | 列表

Linux DHCP配置  

17.1 DHCP服务
DHCP也叫做动态主机服务,它的作用主要是为网络中的主机主机提供IP地址服务的。Dhcp采用client/server模式,客户机请求,服务端响应。

17.1.1 dhcp工作原理
1.客户端向网络上广播dhcpdiscover包,内包含客户机的mac地址。

查看更多...

Tags: DHCP linux

分类:技术资料 | 固定链接 | 禁止评论 | 引用: 0 | 查看次数: 3326

在Debian Linux系统下搭建DHCP服务器

 在常见的小型网络中,网络管理员通常采用手工分配IP地址的方法,而到了大、中型网络,这种方法就不太适用了。在大、中型网络,特别是大型网络 中,往往有超过100台的客户机,手动分配IP地址的方法就就比较困难了。因此,我们必须引入一种高效的IP地址分配方法,幸 好,DHCP(DynamicHostConfigurationProtocol)为我们解决了这一难题。

  动态主机配置协议 (DHCP) 是一种简化主机 IP 配置管理的 TCP/IP 标准。DHCP 标准为 DHCP 服务器的使用提供了一种有效的方法:即管理 IP 地址的动态分配以及网络上启用 DHCP 客户机的其他相关配置信息。

  TCP/IP 网络上的每台计算机都必须拥有唯一的IP 地址。IP 地址(以及与之相关的子网掩码)标识主计算机及其连接的子网。将计算机移动到不同的子网时,必须更改 IP 地址。DHCP 允许您从本地网络上的 DHCP 服务器 IP 地址数据库中为客户机动态指派 IP 地址。

查看更多...

Tags: linux DHCP Debian

分类:技术资料 | 固定链接 | 禁止评论 | 引用: 0 | 查看次数: 1590

gPXE+TFTP+DHCP+iSCSI做无盘服务器

1.环境准备
1.1 安装CentOS5

除一般系统组件以外,必须安装:
TFTP,
DHCPD,
开发工具包

可选安装:
httpd

1.2 下载软件

gpxe-0.9.7.tar.gz    地址: http://kernel.org/pub/software/utils/boot/gpxe/gpxe-0.9.7.tar.gz

syslinux-3.81.tar.gz     地址: http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.81.tar.gz

iscsitarget-1.4.18.tar.gz 地址: http://sourceforge.net/projects/iscsitarget/files/iscsitarget/1.4.18/iscsitarget-1.4.18.tar.gz/download

1.3环境假设

服务器的IP地址为192.168.1.1

2.安装软件

用root帐号登录系统运行以下命令:
cp gpxe-0.9.7.tar.gz /usr/local/src
cp syslinux-3.81.tar.gz /usr/local/src
cp iscsitarget-1.4.18.tar.gz /usr/local/src
cd /usr/local/src
tar -zxvf  gpxe-0.9.7.tar.gz
tar -zxvf  syslinux-3.81.tar.gz
tar -zxvf  iscsitarget-1.4.18.tar.gz

cd /usr/local/src/gpxe-0.9.7/src
make bin/undionly.kpxe

cd /usr/local/src/syslinux-3.81/com32/menu/
ls menu.c32

cd /usr/local/src/iscsitarget-1.4.18/
make
make install

3.配置

3.1 IET配置

vi /etc/ietd.conf
#添加如下信息

Target iqn.2007-08.name.dns.target.my:iscsiboot

    Lun 0 Path=/path/to/image/file.img,Type=fileio
service iscsi-target start

3.2 DHCPD配置

vi /etc/dhcpd.conf
#修改成以下内容

allow booting;

allow bootp;

ddns-update-style none;

log-facility local7;

default-lease-time -1;

max-lease-time 7200;

authoritative;

option space gpxe;

option gpxe-encap-opts code 175 = encapsulate gpxe;

option gpxe.bus-id code 177 = string;

subnet 192.168.1.0 netmask 255.255.255.0 {

    use-host-decl-names on;

    range 192.168.1.26 192.168.1.30;

    option routers 192.168.1.1;

    option broadcast-address 192.168.1.255;

    option root-path "192.168.1.1:/home/tftpboot/";

    next-server 192.168.1.1;

    if not exists gpxe.bus-id {

        filename "gpxe/undionly.kpxe";

    } else {

        # filename "http://192.168.1.1/boot/boot.php";

        filename "gpxe/menu.gpxe";

    }

    server-name "lapdance";

    server-identifier 192.168.1.1; }

3.3 TFTP配置

cd /etc/inetd.d
vi tftp
#修改为以下配置

no code
service inetd restart
mkdir /tftpboot/gpxe
cd /tftpboot/gpxe
cp /usr/local/src/gpxe-0.9.7/src/bin/undionly.kpxe /tftpboot/gpxe/
cp /usr/loca/src/syslinux-3.81/com32/menu/menu.c32 /tftp/boot/gpxe/
touch menu.gpxe
vi menu.gpxe
#插入以下内容

#!gpxe chain

#menu.c32 menu.cfg

sanboot iscsi:192.168.1.1::::iqn.2007-08.name.dns.target.my:iscsiboot


4.客户端

1.找一台机子挂上硬盘安装windowsXP,主分区建议小于4个G
2.安装XP系统后安装Microsoft iSCSI Software Initiator
下载地址:http://download.microsoft.com/download/C/0/3/C0326CE2-51D0-4E1C-A9E0-7E16BE79410B/CHK-Boot/Initiator-2.08-boot-build3825-x86chk.exe
3.安装sanboot补丁
下载地址:
4.将装XP的磁盘从客户机上拆下来挂到服务器上,制作img磁盘文件

#查看磁盘信息
fdisk -l /dev/sdX
#显示如下

Disk /dev/sdX: 80.0 GB, 80026361856 bytes 255 heads, 63 sectors/track, 9729 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes

Device        Boot Start End     Blocks    Id    System

/dev/sdX1     *    1     1825    14659281  7     HPFS/NT

5.生成文件命令(注意bs与count的值与上面信息的对应关系)
dd if=/dev/sdX of=/path/to/image/file.img bs=8225280 count=1825


OK,一切大功告成,开始测试吧!!

    

gPXE无盘中有一个补丁叫sanbootconf,它可以让XP通过ISCSI启动。它有一个功能,就是把无盘系统的IP地址固定为DHCP获取到的 IP,以免多机启动造成IP冲突。但是它有一个问题没有解决,就是多机同时启动计算机名也会冲突。本程序就是解决这个问题的,关键代码如下:

/**

* Store hostname parameters in registry

*

* @v hostname ComputerName

* @ret ntstatus NT status

*/

static NTSTATUS store_hostname_parameters(LPSTR hostname) {

LPWSTR value_name;

HANDLE reg_key;

NTSTATUS status;

WCHAR buf[256];

LPCWSTR star = L"star";

WCHAR key_name_computername[] = ( L"[url=file://Registry//Machine//SYSTEM//]\\Registry\\Machine\\SYSTEM\\[/url]"

      L"CurrentControlSet\\Control\\ComputerName\\ComputerName\\");

WCHAR key_name_hostname[] = ( L"[url=file://Registry//Machine//SYSTEM//]\\Registry\\Machine\\SYSTEM\\[/url]"

      L"CurrentControlSet\\Services\\"

      L"Tcpip\\Parameters\\" );

RtlStringCbPrintfW ( buf, sizeof ( buf ),

     L"%wS-%S", star, hostname );

value_name = buf;

/* Open key */

status = reg_open ( key_name_computername, ®_key );

if ( ! NT_SUCCESS ( status ) )

   goto err_reg_open;

/* Store computername */

status = reg_store_sz ( reg_key, L"ComputerName", value_name );

if ( ! NT_SUCCESS ( status ) )

   goto err_reg_store;

/* Close key */

reg_close(reg_key);

/* open key */

status = reg_open(key_name_hostname, ®_key);

if (!NT_SUCCESS(status))

   goto err_reg_open;

/* Store hostname */

status = reg_store_sz ( reg_key, L"Hostname", value_name );

if ( ! NT_SUCCESS ( status ) )

   goto err_reg_store;

status = reg_store_sz ( reg_key, L"NV Hostname", value_name );

if ( ! NT_SUCCESS ( status ) )

   goto err_reg_store;

/* Store hostname end */

err_reg_store:

reg_close ( reg_key );

err_reg_open:

return status;

}

查看更多...

Tags: gPXE TFTP DHCP iSCSI

分类:技术资料 | 固定链接 | 禁止评论 | 引用: 0 | 查看次数: 4294

:Ŷij ֽ Ͼ ֳ ϶ ֽIJ Ͼ Ͼֳ ӹ ֳ թ 򿪻 Ͷע Űټ Žɳ ˹ 21 365bet Žɳ Žɳַ ÷ ˹˹ ˹ַ ֽ IJ IJ IJ ij ţ hg0088 ϻ ϻϷ