Chinaunix首页 | 论坛 | 博客
  • 博客访问: 171759
  • 博文数量: 48
  • 博客积分: 2245
  • 博客等级: 大尉
  • 技术积分: 535
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-05 16:03
文章分类

全部博文(48)

文章存档

2014年(5)

2013年(4)

2012年(7)

2011年(2)

2010年(30)

我的朋友

分类: LINUX

2010-02-27 22:10:52

利用IPtables实现地址转换

 

Iptables是一个异常强大的工具,它不仅仅能实现防火墙的全部功能,还能利用NAT地址转换使内网的主机访问互联网,也能让互联网的主机访问内网的服务器。

(关于Iptables详情参见:

 

源地址转换

 

一、    实验准备:

 

1、      三台装有linux系统的主机(这里使用Vmware 7.0虚拟机)

2、      IP地址及连接图如下所示: 

 

二、    实验配置

 

1、参照上图配置好IP地址

Local

IP192.168.10.1

MASK:255.255.255.0

GATEWAY:192.168.10.2

 

Firewall

eth0

IP:192.168.10.2

MASK:255.255.255.0

eth1

IP:192.168.100.1

MASK:255.255.255.0

 

Remote

IP:192.168.100.2

MASK:255.255.255.0

GATEWAY192.168.100.1

2、      开启Firewall主机上的路由功能

# vim /etc/sysctl.conf

net.ipv4.ip_forward的值改为1

# sysctl –p

3、测试连通性

  Local

# ping 192.168.100.2

Remote

# ping 192.168.10.1

4、在Remote主机上假设http服务器

  Remote

  # mount /dev/cdrom /media/cdrom

  # rpm-ivh /media/cdrom/Server/httpd-2.2.3-31.el5.i386.rpm

  # service httpd start

5、在Local上访问Remote上的http服务

  Local

  # elinks 192.168.100.2

  # q 退出

可以看到能够正常访问

6、查看Remote主机上的日志观察访问源地址

  Remote

# less /var/log/httpd/access_log

  可以看到访问的源地址为192.168.10.1

4、在Firewall主机上配置实现源地址的转换

  Firewall

  # iptables -t nat -A POSTROUTING -d 192.168.100.2 -s 192.168.10.0/24 -p tcp --dport 80 -j SNAT --to-source 192.168.100.1 

5、再用Local主机去访问Remote主机的WEB服务

  Local

# elinks 192.168.100.2

# q 退出

6、查看Remote主机上的日志

  Remote

  # less /var/log/httpd/access_log

  可以看到访问的源地址为192.168.100.1

 

目标地址转换

 

一、实验准备

  1IP地址及连接图如下所示:

 

二、实验配置

1、如采用上面的实验环境,应清空以上配置。

    Firewall

    # iptables -t nat -F

  2、用Local主机去访问Remote主机的WEB服务

# elinks 192.168.100.2

# q 退出

  3、查看Remote主机上日志

Remote

# less /var/log/httpd/access_log

可以看到访问的源地址为192.168.10.1

  4、在Firewall主机上配置实现目标地址的转换

Firewall

# iptables -t nat -A PREROUTING -d 192.168.100.2 -s 192.168.100.0/24 -p tcp --dport 80 -j DNAT --to-dest 192.168.10.2

  5、查看Remote主机上的日志

Remote

# less /var/log/httpd/access_less

可以看到访问的源地址为192.168.100.1.

 

 

 

总结:

源地址转换主要用于一个网络中只有一个公网地址,而又想让网络中所有的主机都连入互联网。

目标地址转换主要用于在内网搭建公网服务器,由于外网用户不知道服务器的真实地址,所以在一定程度上可以起到保护服务器的作用。

 

阅读(1866) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~