前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于 Linux 中 iptables 升级的一些笔记

关于 Linux 中 iptables 升级的一些笔记

作者头像
山河已无恙
发布2023-08-21 14:44:12
3600
发布2023-08-21 14:44:12
举报
文章被收录于专栏:山河已无恙

1写在前面


  • 学习 K8s 中 kube-proxy 组件调用相关,iptables 模式 发现调用链有些特殊
  • 怀疑是 iptables 版本太旧的问题,所以升级一下试试
  • 关于升级是否有必要,nftables 都出来好久了,这里不做考虑哈
  • 理解不足小伙伴帮忙指正

对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》


这里需要一提的是 ,k8s 集群使用 Calico 在旧版本的 iptables 中有些链的规则不能正常显示,但是并不影响规则。

低版本不能正常显示

代码语言:javascript
复制
-A KUBE-SEP-OLNIRCQFCXAN5USW -p tcp -m comment --comment "velero/minio:console" -m tcp -j DNAT --to-destination :0 --persistent --to-destination :0 --persistent --to-destination 0.0.0.0:0

高版本可以正常显示

代码语言:javascript
复制
-A KUBE-SEP-OLNIRCQFCXAN5USW -p tcp -m comment --comment "velero/minio:console" -m tcp -j DNAT --to-destination 10.244.169.89:9090

当前系统环境版本

代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible]
└─$hostnamectl
   Static hostname: vms100.liruilongs.github.io
         Icon name: computer-vm
           Chassis: vm
        Machine ID: e93ae3f6cb354f3ba509eeb73568087e
           Boot ID: 3276184063244f00bc6efff60ef31879
    Virtualization: vmware
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 5.4.230-1.el7.elrepo.x86_64
      Architecture: x86-64
┌──[root@vms100.liruilongs.github.io]-[~/ansible]
└─$

下载二进制包位置

https://www.netfilter.org/projects/iptables

代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible]
└─$wget --no-check-certificate  https://www.netfilter.org/projects/iptables/files/iptables-1.8.7.tar.bz2

安装解压工具

代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible]
└─$yum -y install bzip2

解压二进制安装包

代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible]
└─$bunzip2 iptables-1.8.7.tar.bz2
┌──[root@vms100.liruilongs.github.io]-[~/ansible]
└─$tar -xvf iptables-1.8.7.tar

nftables 一起升级有些其他的包不支持,好像需要同步升级,所以这里我直接把 nftables 排除调

代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible/iptables-1.8.7]
└─$./configure --disable-nftables
┌──[root@vms100.liruilongs.github.io]-[~/ansible/iptables-1.8.7]
└─$ls
aclocal.m4  build-aux     config.h     config.log     configure     COPYING  extensions  INCOMPATIBILITIES  iptables          libipq   libtool     m4        Makefile.am  stamp-h1  xlate-test.py
autogen.sh  COMMIT_NOTES  config.h.in  config.status  configure.ac  etc      include     INSTALL            iptables-test.py  libiptc  libxtables  Makefile  Makefile.in  utils
┌──[root@vms100.liruilongs.github.io]-[~/ansible/iptables-1.8.7]
└─$make
代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible/iptables-1.8.7]
└─$make install

这里发现升级完并没有,生效,还是原来的版本

代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible/iptables-1.8.7]
└─$iptables -V
iptables v1.4.21

重启机器后发现变成了升级后的版本,这里应该不需要重启,可以考虑重新登录或者 source 一下

代码语言:javascript
复制
┌──[root@vms100.liruilongs.github.io]-[~/ansible]
└─$iptables -V
iptables v1.8.7 (legacy)

2博文部分内容参考

© 文中涉及参考链接内容版权归原作者所有,如有侵权请告知


https://www.netfilter.org/projects/iptables

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 山河已无恙 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1写在前面
  • 2博文部分内容参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档