dhcpv4 test env building

: Ubuntu 14.04 + 有线网卡(eth0) + 无线网卡(wlan0)
B: Windows 7 + 有线网卡 + 无线网卡
A,B的无线网卡都连接到家庭无线路由器,网关为192.168.1.1,可以上互联网。A,B的有线网卡通过网线直连,A作为DHCP server和网关,为B的有线网卡分配IP地址

一.DHCP server(A,B所有网卡均打开)

1. sudo apt-get install dhcp3-server

2. vi /etc/default/isc-dhcp-server

INTERFACES="eth0"

3. 配置ip

给eth0配置ipv4静态地址: 10.5.5.1。

vi /etc/network/interfaces,
[plain] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. auto eth0  
  2. iface eth0 inet static  
  3. address 10.5.5.1  
  4. netmask 255.255.255.224  
  5. network 10.10.10.0  
  6. broadcast 10.5.5.31  
4.vi /etc/dhcp/dhcpd.conf
搜寻这一段文字并全部注释掉
[plain] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. # option definitions common to all supported networks...  
  2. #option domain-name "example.org";  
  3. #option domain-name-servers ns1.example.org, ns2.example.org;  
  4.   
  5. #default-lease-time 600;  
  6. #max-lease-time 7200;  
搜寻这一段文字并修改
[plain] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. subnet 10.5.5.0 netmask 255.255.255.224 {    
  2.     range 10.5.5.26 10.5.5.30;    
  3.     option domain-name-servers 10.5.5.1;   
  4.     option domain-name "internal.example.org";    
  5.     option routers 10.5.5.1;    
  6.     option broadcast-address 10.5.5.31;    
  7.     default-lease-time 600;    
  8.     max-lease-time 7200;    
  9. }   
5. sudo /etc/init.d/isc-dhcp-server start

如果出错,查看/var/log/syslog的错误提示

A安装玩DHCP server后,B的有线网卡可以分配到IP地址。但是B不能上互联网了。

cmd 下输入route print

[plain] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. IPv4 路由表  
  2. ===========================================================================  
  3. 活动路由:  
  4. 网络目标        网络掩码          网关       接口   跃点数  
  5.           0.0.0.0          0.0.0.0      192.168.1.1     192.168.1.10     25  
  6.           0.0.0.0          0.0.0.0         10.5.5.1        10.5.5.26     10  
  7.          10.5.5.0  255.255.255.224            在链路上         10.5.5.26    266  
连互联网时都走HOP数小10.5.5.1路由,导致无法上网。

运行以下命令解决问题

[plain] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. route delete 0.0.0.0  
  2. route add 0.0.0.0 mask 0.0.0.0 192.168.1.1  
  3. route add 10.5.5.0 mask 255.255.255.0 10.5.5.1  

二.B关闭无线网卡,希望通过A作为路由器来连互联网

1. 在DHCP服务器的配置文件中,加入DNS服务器,如google服务器。这样B才能通过A知道DNS服务器的地址
vi /etc/dhcp/dhcpd.conf

[plain] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. subnet 10.5.5.0 netmask 255.255.255.224 {  
  2.     range 10.5.5.26 10.5.5.30;  
  3.     <span style="color:#FF0000;">option domain-name-servers 8.8.8.8;</span>  
  4.     option domain-name "internal.example.org";  
  5.     option routers 10.5.5.1;  
  6.     option broadcast-address 10.5.5.31;  
  7.     default-lease-time 600;  
  8.     max-lease-time 7200;  
  9. }  
2.
A中打开ip包转发功能, vi /etc/sysctl.conf,删除下面一行的注释
net.ipv4.ip_forward=1
(sudo sysctl -p 使改变的配置立即生效)
同时添加iptables(临时方法,重启后会失效):
sudo iptables -t nat -A POSTROUTING -s 10.5.5.0/24 -o wlan0 -j MASQUERADE
(-o wlan0 指定output network interface为wlan0)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值