免费客户服务热线:4006-618-418   ICP备案帮助 | FAQ常见问题 | 合同文档 | 客户案例 | 公司资质 | 参观机房 | 付款方式 | 联系我们
www.netshield.cn   服务器租用  服务器托管  分布式动态云  虚拟空间  弹性云主机  网络安全服务
技术支持
网盾科技最新动态,最新的产品促销活动分享和技术支持!
 IDC机房介绍
· 武汉电信南垸IDC机房
· 潜江电信IDC机房
· 鄂州电信IDC机房
· 十堰电信IDC机房
· 襄阳电信IDC机房
· 咸宁电信IDC机房
· 黄冈电信IDC机房
· 武汉联通IDC机房
· 九江双线IDC机房
 FAQ常见问题大全
· 业务咨询类
· ICP备案相关
· 虚拟主机相关问题
· 服务器相关问题
· 域名相关问题
· 支付合同相关问题
· IDC基础知识
 技术知识分类
· 服务器硬件相关
· 环境配置
· 系统管理
· 网络安全
· 数据库相关
· 网站程序问题
· 新手教程(热)
 购买指南
· 付款方式
· 购买流程
· 为什么选择网盾
· 合同文档下载
· 网站ICP备案帮助
 网盾IDC全天候技术支持
7X24在线客服:

欢迎光临网盾科技 技术支持 QQ:908624
技术支持:15307140247
业务:027-87315200
             87315211
武汉网盾科技>>新闻资讯
Linux下配置SNAT上网
发布时间:2018/9/29 19:55:00 阅读次数:

  Linux下配置SNAT上网
  局域网有一台主机A,没有公网的IP, 也就是没有办法直接连到互联网上下载东西,同时内网有另外一台主机B,有公网接入。这个时候为了让A连接到互联网,我把B设置成NAT主机,A的网关指向B。
  准确的来说,现在的相当于SNAT模式。分析一下数据包流向:
  IP信息如下:
  A: eth0: 10.122.70.74
  B: eth1:10.122.70.65 / eth0:220.220.220.65
  发送数据包:
  A发送数据包时,B也就是NAT主机,分析数据包表头,将此数据包转到可以连接公网的Public IP上去。由于私有IP与公有IP不能互通,B会通过iptables的NAT table内的Postrounting链将数据包表头伪装成B的公网IP,并且将这两个不同来源的数据包对应关系写入暂存内存中,然后将数据包传送出去。此时传到互联网的这个数据包,已经表现为来自公网IP,而非来自局域网。
  接收响应包:
  当从互联网把数据响应给A时,会首先进入NAT主机B,B分析数据包的序号,对比刚刚记录到内存中的数据,由于发现该数据包为后端主机之前传送出去的,因此在NAT Prerouting链中,会将目标IP修改成为后端主机,即A的IP,然后发现目标已经不是本机公网IP,开始通过路由分析,将数据包传送到B的局域网接口,再传送到最终目标10.122.70.74上去。
  B的设置如下:
  #允许接受局域网网卡的数据包,
  iptables -I INPUT -i eth1 -j ACCEPT
  #开启路由功能
  echo 1 > /proc/sys/net/ipv4/ip_forward
  #伪装数据包
  iptables -t nat -A POSTROUTING -s 10.122.70.74 -o eth0 -j MASQUERADE
  iptables -t nat -A POSTROUTING -s 10.122.70.74 -j MASQUERADE
  或者用SNAT直接修改IP数据包的表头来源IP
  iptables -t nat -A POSTROUTING -o eth1 -j SNAT –to 10.122.70.74
  如果支持多个IP
  iptables -t nat -A POSTROUTING -o eth1 -j SNAT –to 10.122.70.74-10.122.70.100
  A设置:
  vi /etc/sysconfig/network-scripts/ifcfg-eth0
  # Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
  DEVICE=eth0
  BOOTPROTO=static
  ONBOOT=yes
  IPADDR=10.122.70.74
  NETMASK=255.255.0.0
  GATEWAY=10.122.70.65
  ===============================================
  查看nat表链规则
  iptables -t nat -L -n
  删除POSTROUTING第一条规则
  iptables -t nat -D POSTROUTING 1
  实例配置:
  B主机(172.20.18.102):
  cat /etc/sysconfig/iptables
  -A POSTROUTING -s 172.20.18.103/32 -j MASQUERADE
  A主机(172.20.18.103):
  cat ifcfg-eno1
  TYPE=Ethernet
  BOOTPROTO=static
  NAME=eno1
  UUID=0f506d06-e9f0-41ed-ae79-a30b8236da4c
  DEVICE=eno1
  IPADDR=172.20.18.103
  NETMASK=255.255.0.0
  GATEWAY=172.20.18.102
  ONBOOT=yes
  测试网络连接情况:
  ping www.baidu.com
  PING www.a.shifen.com (115.239.211.112) 56(84) bytes of data.
  64 bytes from 115.239.211.112 (115.239.211.112): icmp_seq=1 ttl=54 time=3.19 ms
  64 bytes from 115.239.211.112 (115.239.211.112): icmp_seq=2 ttl=54 time=3.17 ms


关于我们 | 公司资质 | 联系我们 | 参观机房 | 如何交费 | 客户案例 | 诚聘英才 | 技术支持 | FAQ常见问题 | 合同文档
免费客户服务热线:4006-618-418  027-87315200  87315211  业务咨询:欢迎光临网盾科技6520895   欢迎光临网盾科技46596761   欢迎光临网盾科技15642798  在线客服:   技术支持:欢迎光临网盾科技908624
《中华人民共和国增值电信业务经营许可证》ICP证编号:鄂B1-20160016  业务咨询:18062150949  18942945673(微信同号)
Copyright © 2006- 武汉网盾科技有限公司 All rights reserved.
武汉网盾科技有限公司