[其它] linux开启内部路由转发、关闭ICMP重定向功能

[复制链接]
查看: 1006|回复: 0

14

主题

14

帖子

54

积分

注册会员

Rank: 2

积分
54
发表于 2020-1-13 23:05:37 | 显示全部楼层 |阅读模式

一组内部机器需要连接外网,则需要找一台机器,即可以连接外网,内网机器也可以连接。

因此将这台外网机器当做路由器,做路由转发

1、在需要做路由转发的机器上执行下面命令

  1. [root@shx ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
复制代码
若是ipv6则执行
  1. echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
复制代码

但一般不建议,下次开机它又会变为0

修改它的配置文件,把net.ipv4.ip_forward = 1

  1. [root@shx-web150 ~]# vim /etc/sysctl.conf

  2. # Kernel sysctl configuration file for Red Hat Linux

  3. #

  4. # For binary values, 0 is disabled, 1 is enabled.  See sysctl(8) and

  5. # sysctl.conf(5) for more details.

  6. # Controls IP packet forwarding

  7. net.ipv4.ip_forward = 1

  8. # Controls source route verification

  9. net.ipv4.conf.default.rp_filter = 1
复制代码

若是ipv6,则添加net.ipv6.conf.all.forwarding=1 配置项的值

让它立即生效,就执行

  1. [root@shx-web150 ~]# sysctl -p
复制代码
2、紧接着我就把内网机器网关指向A的内网IP地址,结果,还是不能连接到外网,纠结许久。后面想到,才想起要在A做一个NAT转发
  1. [root@shx-web150 ~]#iptables -t nat -A POSTROUTING -s 10.1.2.0/24 -j MASQUERADE
复制代码

若是ipv6,则使用ip6tables。

可参考iptables实现路由转发

二、关闭ICMP重定向

ipv4:

# 关闭 icmp 的重定向

  1. echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

  2. echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects

  3. echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects
复制代码
ipv6:
  1. echo 0 > /proc/sys/net/ipv6/conf/all/accept_redirects

  2. echo 0 > /proc/sys/net/ipv6/conf/default/accept_redirects

  3. echo 0 > /proc/sys/net/ipv6/conf/eth0/accept_redirects
复制代码
linux内核相关可参考:linux ipv6内核设置

永久生效(未验证):

ipv4:

  1. # vim /etc/sysctl.conf
  2. net.ipv4.conf.eth0.send_redirects= 0
  3. net.ipv4.conf.eth1.send_redirects= 0
  4. net.ipv4.conf.lo.send_redirects= 0
  5. net.ipv4.conf.default.send_redirects= 0
  6. net.ipv4.conf.all.send_redirects= 0
复制代码

或者是accept_redirects 。

ipv6:

  1. # vim /etc/sysctl.conf
  2. net.ipv4.conf.eth0.accept_redirects= 0
  3. net.ipv4.conf.eth1.accept_redirects= 0
  4. net.ipv4.conf.lo.accept_redirects= 0
  5. net.ipv4.conf.default.accept_redirects= 0
  6. net.ipv4.conf.all.accept_redirects= 0
复制代码


腾讯云
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩图文



在线客服(工作时间:9:00-22:00)
400-600-6565

内容导航

微信客服

Copyright   ©2015-2019  云服务器社区  Powered by©Discuz!  技术支持:尊托网络     ( 湘ICP备15009499号-1 )