最近偶尔发现一个比较奇怪的现象,netstat 查看监听的服务端口时,却只显示了 tcp6 的监控, 但是服务明明是可以通过 tcp4 的 ipv4 地址访问的,那为什么没有显示 tcp4 的监听呢? 以 sshd 监听的 22 端口为例: # netstat -tlnp | grep :22 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1444/sshd tcp6 0 0 :::22 :::* LISTEN 1444/sshd 可以看到,netstat 显示表示 s…
自动批量检查agent开放的端口 PS:如果服务器上的应用都是固定的,不会随机产生的都可以使用自动发现端口来监控:  如果服务器会随机出现端口且每次启动程序都会改变,可以采用第二种方法,来监控指定的端口 约定 zabbix所有执行的脚本统一放置在 /etc/zabbix/scripts 目录下 #cd /etc/zabbix/ #mkdir scripts #chown root:zabbix -R /etc/zabbix/scripts/ #chmod /etc/zabbix/scripts/…
docker  iptables  端口映射  nat #!/bin/bash pro='tcp' NAT_Host='Host_A' NAT_Port=8080 Dst_Host='Host_B' Dst_Port=80 iptables -t nat -A PREROUTING -m $pro -p $pro --dport $NAT_Port -j DNAT --to-destination $Dst_Host:$Dst_Port iptables -t nat -A POSTROUTIN…
veridata实验例(3)验证veridata发现insert操作不会导致同步 续接:<veridata实验举例(2)验证表BONUS与表SALGRADE两节点同步情况>,地址:点击打开链接 环境: Item Source System Target System Platform Red Hat Enterprise Linux Server release 5.4 Red Hat Enterprise Linux Server release 5.4 Hostname gc1 gc2 D…
最近在部署zabbix监控  有些服务器上开启的服务端口非常多  如果一个个添加监控会很繁琐,于是想到了自动发现规则  自动发现服务器上的服务端口并进行监控. 在zabbix客户端服务器上进行操作 1)编写端口自动发现的脚本 cat /usr/local/zabbix/scripts/discover_port.sh #!/bin/bashportarray=(`sudo netstat -tnlp|egrep -i "$1"|awk {'print $4'}|awk -F':' '{…
自动发现端口并添加监控设置UserParameter=net.listen.discovery,sudo /etc/zabbix/scripts/discovery_listport.sh #!/bin/bash Check=(`netstat -lntp|awk '/^tcp/{split($4,Port,":");split($7,Name,"[/:]");print Name[2]":"Port[length(Port)]}'|sort -…
一.Zabbix-3.0.3批量添加主机的配置如下: 0)被监控机上要安装zabbix_agent,并配置好zabbix_agentd.conf (如下172.29.8.50是zabbix_server机器的ip地址) 可批量修改zabbix_agentd.conf,如下: sed -i 's/Server=127.0.0.1/Server=172.29.8.50/g' /etc/zabbix/zabbix_agentd.conf sed -i 's/ServerActive=127.0.0.1…
动批量检查agent开放的端口 注:此方法给监控磁盘IO(即十二)篇过程一样: 注释:如果服务器上的应用都是固定的,不会随机产生的都可以使用自动发现端口来监控:  如果服务器会随机出现端口且每次启动程序都会改变,可以采用第二种方法,来监控指定的端口: 约定: zabbix所有执行的脚本统一放置在 /etc/zabbix/scripts 目录下 chown root:zabbix -R /etc/zabbix/scripts/ chmod /etc/zabbix/scripts/ chmod /e…
今天来系统聊一聊docker的端口,常见的有容器内程序端口.容器端口.主机端口.Dockerfile中EXPOSE端口.docker-compose和docker run中的port等. 貌似很多端口,但连接时真实的端口仅程序端口和主机端口,其他都是对端口的声明,并不会实际开启端口的服务. 下面以nginx和redis镜像为例介绍下这些端口的关系:nginx程序端口80,映射主机端口30080:redis程序端口6379,映射主机端口36379.实际通信如下图 程序端口即容器端口 程序端口即实际…
Docker 构建网络服务后本机不能访问 起因 使用tornado构建了一个服务,测试都没有问题 使用docker构建镜像,使用docker run image_name启动服务 使用浏览器访问 127.0.0.1:xxxx 失败,无法连接 排错 发现访问127的网址肯定是不行的,这简直就是秀智商,你访问本机怎么可能转发到容器中呢-- 想起来docker inspect container_id这个命令,查看了一下容器的IP,拿到IP后用同样的方式访问,发现还是无法连接,这就尴尬了 然后尝试pi…
原文:docker 安装redis 并配置外网可以访问 - flymoringbird的博客 - CSDN博客 端口映射,data目录映射,配置文件映射(在当前目录下进行启动). docker run -p 6379:6379 --name myredis -v $PWD/conf/redis.conf:/etc/redis/redis.conf -v $PWD/data:/data -d redis:3.2 redis-server  /etc/redis/redis.conf --appen…
主题: Linux服务器上软件提供服务 1.网络操作 2.端口操作 1.网络操作 本机必须能够ping通目标主机(本地虚拟机或者远程主机) 2.端口操作 1.开启服务监听端口 2.设置防火墙,放行访问该端口的数据包 iptables&netfilter 四表五链和堵通策略 应用举例: Linux上安装Tomcat和MySQL,客户端要能够访问服务器上的Tomcat服务和MySQL服务 操作: 1.网络操作 本机必须能够ping通目标主机(本地虚拟机或者远程主机) 2.端口操作 1.开启服务监听端…
1, docker 拉去最新版本的redis docker pull redis #后面可以带上tag号, 默认拉取最新版本 2, docker安装redis container 安装之前去定义我们的redis.conf文件, 这一步很重要, redis.conf目录 $PWD/conf/redis.conf 执行命令: wget http://download.redis.io/redis-stable/redis.conf 最好将该目录权限改为当前的user, 执行命令: sudo chow…
TLM传输数据导致多线程访问同一个数据 原因 TLM发送数据跟mailbox类似,都是发送的引用,这样发送端和接收端的引用都指向同一个数据,这样就会出现发送端修改数据会影响到接收端,比如发送的时候数据时A,接收端接收后,发送端又修改了这个数据为B,就会导致接收端接收的是B. 举例 monitor发送数据个RM monitor伪代码 while(1)begin tr.a = bus.a; @(bus) port.put(tr); end RM伪代码 while(1)begin port.get(t…
一.问题现象 1.现象举例: # 自制的springboot项目的dockerfile # springboot 其实就是一个简单的hello-world程序,写了一个HelloController 做测试 # dockerfile内容: FROM java:8 MAINTAINER shan <test@qq2363581677@163.com> ADD ./demo.jar /demo.jar EXPOSE 8848 CMD java -jar /demo.jar # 构建镜像 docke…
1.需求描述        默认情况下Zabbix 模板 中网络接口自动发现接口时,会产生很多item,有时候会有我们不需要的一些接口,这时候需要过滤掉他们.        比如我有一台运行kvm的服务器,服务器上有四个物理接口 eth0-eth3 , 三个网桥接口 br0-br2 , 还有很多个虚机的网卡接口 vnetxx ,如下所示:   1 [root@host00 ~]# ifconfig |grep HW 2 br0 Link encap:Ethernet HWaddr EC:F4:B…
一.运行一个web应用 首先,下载一个docker镜像: [root@k8s-01 ~]# docker pull training/webapp 运行webapp的容器: [root@k8s-01 ~]# docker run -d -P training/webapp python app.py cb2ea5793288ada7c8be553befab76d7516e4a65999680aefeb531d000888634 参数说明: -d:让容器在后台运行 -P:将容器内部使用的网络端口映…
映射端口 -d 后台执行 -p映射端口 --privileged 可以使用systemctl # docker run --privileged -d -p 9000:80 jiqing9006/centos:httpd /sbin/init e2e33ac1fb2acdef86c995c79eb746fb552417b112210bc5353de74a2f63e4e7 访问容器 root@ThinkPad:/home/jiqing# docker ps -q e2e33ac1fb2a root…
Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案 方法/步骤     最近更新了Windows10,总体上来说效果还是蛮不错的,然而今天在开启Apache服务器的时候却发现,Apache莫名其妙的打不开了,起初以为是权限的问题,于是使用管理员身份的控制台去调用命令net start Apache2.4,结果依然是无法打开.手动启动服务报错“Windows不能再本地计算机启动Apache,有关更多信息,查阅系统时间日志.如果这是非Microsoft…
一.前言 在Visual Studio 调试程序时,Docker中的容器端口和主机端口映射随机生成,导致每次调试都需要修改前端API接口的地址 二.解决方案 1.修改Docker调试启动参数,找到启动项目中launchSettings.json文件 2.打开此文件找到Docker配置信息项(添加Docker支持后默认参数设置)  3.修改启动参数 字段解释 commandName:命令名称 launchBrowser:在成功启动项目后是否启动浏览器 launchUrl:启动浏览器时使用该URL…
一.Docker容器连接 前面的第二章节,我们事先通过网络端口来访问运行在docker容器内的服务,我们也可以通过端口连接到一个docker容器 我们可以指定容器绑定的网络地址,如绑定127.0.0.1 [root@k8s-01 docker]# docker run -d -p 127.0.0.1:5001:5000 modify/webapp:v2 python app.py 747e9e0a7d61f3e3a9628d51d305a52ce236fa141a8b3755594b8fd49c…
docker run可以指定端口映射,但是容器一旦生成,就没有一个命令可以直接修改.通常间接的办法是,保存镜像,再创建一个新的容器,在创建时指定新的端口映射. 但这样太麻烦了.现在有新方案来解决掉: 操作步骤: 1 查看容器 docker ps -a 2 停止容器 docker stop f503 3 停止docker服务 systemctl stop docker 4 修改文件 vi /var/lib/docker/containers/{container_id}/hostconfig.js…
1.新建客户端需要的脚本 # vim discovertcpport.sh #!/bin/bash portarray=(`sudo netstat -tnlp|egrep -i "$1"|awk {'print $4'}|awk -F':' '{if ($NF~/^[0-9]*$/) print $NF}'|sort|uniq`) length=${#portarray[@]} printf "{\n" printf '\t'"\"data\&…
1.端口映射实现访问容器 1.从外部访问容器应用 在启动容器的时候,如果不指定对应的参数,在容器外部是无法通过网络来访问容器内部的网络应用和服务的. 当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-p或-P参数来指定端口映射.当使用-P(大写P)标记时,Docker会随机映射一个端口到内部容器开放的网络端口(端口范围在Linux系统使用的端口之外,一般都过万): [root@docker ~]# docker run -d --name nginx_1 -P nginx:latest…
一.背景 在创建容器的时候,我们可以使用命令 docker container run -p host:container container-name 的方式来绑定端口,还可以使用docker-compose.yml文件来绑定端口.有时会有一个需求:在已经创建的容器上添加容器端口与主机端口的绑定,这时可以使用iptables命令来动态绑定端口,而不用重新创建容器. 二.使用iptables动态绑定端口 1.查看容器ip docker inspect <container-name | id>…
在虚拟机中安装docker,linux ubuntu16 ,安装完公司172.17网段被docker0覆盖,导致ssh无法连接到ubuntu. 经过官网的这篇build your own bridge,解决了. 停止服务,删除旧网桥: $ sudo systemctl stop docker$ sudo ip link set dev docker0 down$ sudo brctl delbr docker0 创建网桥 bridge0: $ sudo brctl addbr bridge0$…
iptables 默认5个表, 不可增加其他表 raw 用于配置数据包,raw 中的数据包不会被系统跟踪. filter 是用于存放所有与防火墙相关操作的默认表. nat 用于 网络地址转换(例如:端口转发). mangle 用于对特定数据包的修改(参考 损坏数据包). security 用于 强制访问控制 网络规则 控制Linux內核netfilter模組, 做数据包的过滤和转发,只是netfilter项目的一小部分 防火墙黑白名单 可以在内核层面将对80端口的访问直接映射到8080端口上 N…
如何限制docker暴露的对外访问端口 docker 会在iptables上加上自己的转发规则,如果直接在input链上限制端口是没有效果的.这就需要限制docker的转发链上的DOCKER表. # 查询DOCKER表并显示规则编号 iptables -L DOCKER -n --line-number # 修改对应编号的iptables 规则,这里添加了允许访问ip的限制 iptables -R DOCKER 5 -p tcp -m tcp -s 192.168.1.0/24 --dport…
大家都知道docker run可以指定端口映射,但是容器一旦生成,就没有一个命令可以直接修改.通常间接的办法是,保存镜像,再创建一个新的容器,在创建时指定新的端口映射. 有没有办法不保存镜像而直接修改已有的这个容器呢?有.在stackoverflow上面找到答案了,原帖如下 https://stackoverflow.com/questions/19335444/how-do-i-assign-a-port-mapping-to-an-existing-docker-container 我的操作…
 一.修改端口号 在docker run创建并运行容器的时候,可以通过-p指定端口映射规则.但是,我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改.当docker start运行容器后并没有提供一个-p选项或设置,让你修改指定端口映射规则.那么这种情况我们该怎么处理呢?今天Docker君教你如何修改运行中的docker容器的端口映射? 方法一:删除原有容器,重新建新容器 这个解决方案最为简单,把原来的容器删掉,重新建一个.当然这次不要忘记加上端口映射. 方法二:修改容器配置文件,重启do…