Cloud Native应用交付

  • 首页
  • 关于本站
  • 个人介绍
  • Downloads
  • Repo
    • Github
    • Container
  • F5
    • F5 Python SDK
    • F5-container
    • F5-LBaaS
  • 社交
    • 联系我
    • 微信/微博
    • 公众号
    • 打赏赞助
行至水穷处 坐看云起时
Cloud Native Application Services: cnadn.net
  1. 首页
  2. F5技术
  3. 正文

[利用IP取余来保证SNAT的保持] 修正测试OK版/updated on 2010/5/13

2008年12月17日 9954点热度 1人点赞 1条评论

注意下面的cnc_snatpool这个class里的所有IP,也应该单独配置在一个snat pool里,这样F5才能响应这些对这些地址的ARP请求。

when RULE_INIT {
set ::snat_length [llength $cnc_snatpool]
log  local0.error "length is $snat_length"
}
when LB_SELECTED {
log local0.warning "$::cnc_snatpool wokao!!"
set client_ip [IP::client_addr]
set client_last [getfield $client_ip "." 4]
set snat_addr [lindex ::cnc_snatpool [exprclient_last%$::snat_length] ]
snat $snat_addr
log local0.warning "mod:[expr client_last%::snat_length] and select $snat_addr !!!!!!!"

}

实际使用的时候可以再优化,比如不让rule来算class长度。因为一般class的量都很少,用常量。其次不设各个变量,直接将变量替换,如优化成这样:

when LB_SELECTED {
snat [lindex $::cnc_snatpool [expr  [getfield [IP::client_addr] "." 4]%8] ]
#log local0. "注意上面%后的8根据实际情况修改,比如class里只有8个"
}

 V10 更新,在V10下class的处理方法有所变化,cnc_snatpool这个class设置的时候填string,不用填value,同时irule变化如下:

[lindex $::cnc_snatpool [expr  [getfield [IP::client_addr] "." 4]%8] ] 部分改为

[class element -name [expr [getfield [IP::client_addr] "." 4]%8]  $::cnc_snatpool ]

 

下面是以前的一个老文档,上面有些小错误。

[利用IP取余来保证SNAT的保持]

相关文章

  • 密码保护:F5OS tenant部署后的容器情况、网络接口情况
  • 密码保护:F5OS tenant镜像实例化后信息
  • 密码保护:F5OS docker-compose.yml
  • 密码保护:F5OS 底层容器、网络及k8s状态
  • AI Gateway PII test page - internal only
本作品采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可
标签: SNAT rule irule
最后更新:2008年12月17日

纳米

linjing.io

打赏 点赞
< 上一篇
下一篇 >

文章评论

  • 无敌小舒克

    纳米哥就是厉害,哈哈哈

    2008年12月21日
    回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    取消回复

    这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理。

    页面AI聊天助手

    纳米

    linjing.io

    ☁️迈向Cloud Native ADC ☁️

    认证获得:
    TOGAF: ID 152743
    Kubernetes: CKA #664
    Microsoft: MCSE MCDBA
    Cisco: CCNP
    Juniper: JNCIS
    F5:
    F5 Certified Solution Expert, Security
    F5 Certified Technology Specialist, LTM/GTM/APM/ASM
    F5 Certified BIG-IP Administrator
  • 点击查看本博技术要素列表
  • 归档
    分类
    • AI
    • Automation
    • Avi Networks
    • Cisco ACI
    • CISCO资源
    • F5 with ELK
    • F5-Tech tips
    • F5技术
    • Juniper
    • Linux
    • NGINX
    • SDN
    • ServiceMesh
    • WEB编程
    • WINDOWS相关
    • 业界文章
    • 交换机技术
    • 化云为雨/Openstack
    • 协议原理
    • 容器/k8s
    • 我的工作
    • 我的生活
    • 网站技术
    • 路由器技术
    • 项目案例
    标签聚合
    openstack istio gtm api F5 flannel nginx DNS envoy network k8s neutron docker irule bigip
    最近评论
    汤姆 发布于 8 个月前(09月10日) 嗨,楼主,里面的json怎么下载啊,怎么收费啊?
    汤姆 发布于 8 个月前(09月09日) 大佬,kib的页面可以分享下吗?谢谢
    zhangsha 发布于 1 年前(05月12日) 资料发给我下,谢谢纳米同志!!!!lyx895@qq.com
    李成才 发布于 1 年前(01月02日) 麻烦了,谢谢大佬
    纳米 发布于 1 年前(01月02日) 你好。是的,因为以前下载系统插件在一次升级后将所有的下载生成信息全弄丢了。所以不少文件无法下载。DN...
    浏览次数
    • Downloads - 183,915 views
    • 联系我 - 118,966 views
    • 迄今为止最全最深入的BIGIP-DNS/GTM原理及培训资料 - 117,187 views
    • Github - 103,962 views
    • F5常见log日志解释 - 79,906 views
    • 从传统ADC迈向CLOUD NATIVE ADC - 下载 - 75,048 views
    • Sniffer Pro 4 70 530抓包软件 中文版+视频教程 - 74,320 views
    • 迄今为止最全最深入的BIGIP-DNS/GTM原理及培训资料 - 67,770 views
    • 关于本站 - 61,092 views
    • 这篇文档您是否感兴趣 - 55,585 views
    链接表
    • F5SE创新
    • Jimmy Song‘s Blog
    • SDNlab
    • Service Mesh社区
    • 三斗室
    • 个人profile
    • 云原生社区

    COPYRIGHT © 2023 Cloud Native 应用交付. ALL RIGHTS RESERVED.

    Theme Kratos Made By Seaton Jiang

    京ICP备14048088号-1

    京公网安备 11010502041506号