精华内容
下载资源
问答
  • linux grep过滤Searching IP address in a text file or a console output may become cumbersome. This little command named grep will help you in this way. 在文本文件或控制台输出中搜索IP地址可能很麻烦。 这...
    linux grep过滤

    linux grep过滤

    Searching IP address in a text file or a console output may become cumbersome. This little command named grep will help you in this way.

    在文本文件或控制台输出中搜索IP地址可能很麻烦。 这个名为grep的小命令将以这种方式帮助您。

    示例数据 (Example Data)

    We have a file or output which includes the IP address and we want to extract just IP addresses nothing other. This file is created with a nmap scan.

    我们有一个包含IP地址的文件或输出,我们只想提取IP地址即可。 该文件是使用nmap扫描创建的。

    Nmap scan report for 192.168.122.1 
    Host is up (0.00022s latency). 
    Nmap scan report for kali (192.168.122.126) 
    Host is up (0.00015s latency).
    

    打印接口IP地址 (Print Interfaces IP Addresses)

    We can use ip addr command which will print current system interfaces and related information. We can grep from this information and print only IP addresses currently the system is using with the following command.

    我们可以使用ip addr命令来打印当前系统界面和相关信息。 我们可以根据以下信息grep并仅打印系统当前正在使用的IP地址。

    $ ip add | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
    
    Print Interfaces IP Addresses
    Print Interfaces IP Addresses
    打印接口IP地址

    仅打印I​​P地址(Print Only IP Addresses)

    Here we use grep command and give -o option to only get the IP address. The default behavior of the grep is printing lines which match given regex but if we only want to print matched text not the whole line we will use -o option which will print only IP addresses.

    在这里,我们使用grep命令并给-o选项仅获取IP地址。 grep的默认行为是打印与给定正则表达式匹配的行,但是如果我们只想打印匹配的文本而不是整行,我们将使用-o选项,该选项仅打印IP地址。

    $ grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' network_list.txt 
    192.168.122.1 
    192.168.122.126
    

    Linux Infografic中的Grep和过滤IP地址 (Grep and Filter IP Address In Linux Infografic)

    Grep and Filter IP Address In Linux Infografic
    Grep and Filter IP Address In Linux Infografic
    Linux Infografic中的Grep和过滤IP地址
    LEARN MORE  DHCP Reservation For Windows Server 2012, Windows Server 2008 and Benefits
    了解更多有关Windows Server 2012,Windows Server 2008的DHCP保留和优点

    翻译自: https://www.poftut.com/grep-and-filter-ip-address-in-linux/

    linux grep过滤

    展开全文
  • Linux系统下IP过滤技术的应用.pdf
  • 今天自己有了一个小小想法,Linux中的ifconfig/ip命令查看IP地址显示的内容实在太多了,该练习一下如何用正则过滤命令直接提取(xxx.xxx.xxx.xxx)格式的IP的地址。准备:Linux如何查看IP地址的命令,本人知道两种...

    概述:

    最近一个月一直把精力投入到Linux的学习当中了,越学越觉得Linux实在太好玩了。今天自己有了一个小小想法,Linux中的ifconfig/ip命令查看IP地址显示的内容实在太多了,该练习一下如何用正则过滤命令直接提取出(xxx.xxx.xxx.xxx)格式的IP的地址。

    准备:

    Linux如何查看IP地址的命令,本人知道两种,分别是ifconfig和ip,至于具体用法,在这就不详细说了,我们的主要目标是用正则来过滤两者基本命令获取的内容以至于直接获得地址,但是我们还是必须了解两者获得的内容是不一样的。
    首先,我们先来看看两者的基本命令输出的内容分别是什么。
    命令ifconfig:
    命令ifconfig内容

    命令ip addr:
    ip addr内容

    (注意:本人的工作环境是CentOS6.6,同时因为之前配置过网络,所以是修改过/etc/udev/rules.d/70-persistent-net.rules 里面的DEVICE=eth2,从而显示的IP地址是在eth2中,读者需要根据自己的工作环境来修改选取IP的地址的设备,适当把本文中的eth2改成eth1或者eth0或者不变。)

    知道我们的目标之后,就应该分析我们用什么工具来处理这些内容呢?
    命令grep:
    grep 则是分析一行讯息, 若当中有我们所需要的信息,就将该行拿出来。
    简单的语法是这样的:

    [dmtsai@study ~]$ grep [-acinv] [–color=auto] ‘搜寻字串’ filename
    选项与参数:
    -a :将 binary 文件以 text 文件的方式搜寻数据
    -c :计算找到 ‘搜寻字串’ 的次数
    -i :忽略大小写的不同,所以大小写视为相同
    -n :顺便输出行号
    -v :反向选择,亦即显示出没有 ‘搜寻字串’ 内容的那一行!
    –color=auto :可以将找到的关键字部分加上颜色的显示喔!

    命令 sed:
    sed 本身是一个管线命令,可以分析 standard input 的 而
    且 sed 还可以将数据进行取代、删除、新增、撷取特定行等等的功能呢!

    sed [-nefr] [动作]
    选项与参数:
    -n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到屏幕上。
    但如果加上 -n 参数后,则只有经过 sed 特殊处理的那一行(或者动作)才会被列出来。
    -e :直接在命令行界面上进行 sed 的动作编辑;
    -f :直接将 sed 的动作写在一个文件内, -f filename 则可以执行 filename 内的 sed 动作;
    -r :sed 的动作支持的是延伸型正则表达式的语法。(默认是基础正则表达式语法)
    -i :直接修改读取的文件内容,而不是由屏幕输出。
    动作说明: [n1[,n2]]function
    n1, n2 :不见得会存在,一般代表“选择进行动作的行数”,举例来说,如果我的动作
    是需要在 10 到 20 行之间进行的,则“ 10,20[动作行为] ”
    function 有下面这些咚咚:
    a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
    c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
    d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
    i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
    p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
    s :取代,可以直接进行取代的工作哩!

    而我们主要用的语法是:

    sed ‘s/要被取代的字串/新的字串/g’

    分析:

    一、处理命令Ifconfig eth2 内容:

    1、用命令“Ifconfig eth2” 输出基本内容:
    这里写图片描述
    2、用命令“| grep ‘inet ’”选出IP地址关键的一条:
    这里写图片描述
    3、 用命令 “| sed‘s/^.*addr://g’”去除IP地址前面的内容:
    这里写图片描述
    4、用命令 “sed s/Bcast.*$//g”去除IP地址后面的内容:
    这里写图片描述

    二、处理命令 ip addr show eth2内容:
    1、用命令“ ip addr show eth2” 输出基本内容:
    这里写图片描述
    2、用命令“| grep ‘inet ’”选出IP地址关键的一条:
    这里写图片描述
    3、 用命令 “| sed ‘s/^.*inet //g’”去除IP地址前面的内容:
    这里写图片描述
    4、用命令 “|sed ‘s#/24.*$##g’”去除IP地址后面的内容:
    这里写图片描述
    (注意:这里因为遇到了要过滤“/”,所以我们就不再用“s///g”命令了,用“s###g”代替,而功能上是一样的,除此之外,我们还能用“s:::g”代替。)
    这里写图片描述

    总结:

    其实本人觉得以上的做法还是有点繁琐,不排除有其他简单的方法,如果日后本人发现更简单的方法将会再次分享给大家讨论。

    展开全文
  • linuxIP过滤简介

    2011-01-21 09:21:06
    Iptables的使用方法、防火墙的原则
  • 防火墙是一种保护网络的行之有效的安全机制 是保护区的一道安全防线它能够将保护区以外的非法入侵及访问拒之门外对于资金少又有科研人员的单位可采用源代码开放的免费的Linux netfilter/iptables 构建防火墙.
  •  ip add |awk -F '[ /]+' 'NR==8 {print $3}' 192.168.150.53  本文转自 M四月天 51CTO博客,原文链接:http://blog.51cto.com/msiyuetian/1733259 ,如需转载请自行联系原作者

    [root@localhost ~]# ifconfig

    eth0      Link encap:Ethernet  HWaddr DA:DE:BE:41:89:18

              inet addr:192.168.150.53  Bcast:192.168.150.255  Mask:255.255.255.0

              inet6 addr: fe80::d8de:beff:fe41:8918/64 Scope:Link

              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

              RX packets:184255445 errors:0 dropped:0 overruns:0 frame:0

              TX packets:51947 errors:0 dropped:0 overruns:0 carrier:0

              collisions:0 txqueuelen:1000

              RX bytes:12701252470 (11.8 GiB)  TX bytes:4422271 (4.2 MiB)

              Interrupt:17


    方法1:匹配 inet addr 这行;以冒号为分隔符,显示第2段;再次以空格为分隔符,显示第1段

    [root@localhost ~]# ifconfig eth0 |grep 'inet addr' |cut -d: -f2 |cut -d" " -f1

    192.168.150.53

    方法2:匹配 inet addr 这行;以空替换从开头到 addr: 的字符串;再次以空替换从Bcast到结尾的字符串

    [root@localhost ~]# ifconfig eth0 |grep 'inet addr' |sed 's/^.*addr://g' |sed 's/Bcast.*$//g'

    192.168.150.53

    方法3:匹配 inet addr 这行;以:或者空格作为分隔符,然后打印第4列

    [root@localhost ~]# ifconfig eth0 |grep 'inet addr' |awk -F[:" "]+ '{print $4}'

    192.168.150.53

    方法4:匹配 inet addr 这行;以:作为分隔符,打印第2列,然后再打印第一列

    [root@localhost ~]# ifconfig eth0 |grep 'inet addr' |awk -F: '{print $2}' |awk '{print $1}'

    192.168.150.53

    方法5:

    [root@localhost ~]# ifconfig eth0|sed -nr '2s#^.*addr:(.*) Bcast.*$#\1#g'p

    192.168.150.53

    方法6:

    [root@localhost ~]# ifconfig eth0 |awk '/inet addr:/ {print $2}' |awk -F: '{print $2}'

    192.168.150.53

    方法7:

    [root@localhost ~]# ifconfig eth0 |awk '/inet addr:/ {print $2}' |awk -F: '{print $2}'

    192.168.150.53

    方法8:

    [root@localhost ~]# ifconfig eth0 |awk 'NR==2 {print $2}' |awk -F: '{print $2}'

    192.168.150.53

    方法9:

    [root@localhost ~]# ip add |awk -F '[ /]+' 'NR==8 {print $3}'

    192.168.150.53





          本文转自 M四月天 51CTO博客,原文链接:http://blog.51cto.com/msiyuetian/1733259,如需转载请自行联系原作者



    展开全文
  • 过滤技术是防火墙技术的技术核心,本文主要介绍在Linux内核中实现IP过滤的基本流程,同时对IP伪装和网络地址转换(NAT)的实现作简要的介绍。
  • 一 :iptables 了解: iptables,可以将规则组成一个列表,实现绝对详细的访问控制功能 工作在用户空间中,定义规则的工具,本身并不算...而这个tcp/ip协议栈必须经过的地方,可以实现读取规则的地方就叫做 netfi

    一 iptables 了解

    iptables,可以将规则组成一个列表,实现绝对详细的访问控制功能工作在用户空间中,定义规则的工具,本身并不算是防火墙。它们定义的规则,可以让在内核空间当中的netfilter来读取,并且实现让防火墙工作。
    而放入内核的地方必须要是特定的位置,必须是tcp/ip的协议栈经过的地方。而这个tcp/ip协议栈必须经过的地方,可以实现读取规则的地方就叫做 netfilter.(网络过滤器)

    当主机收到一个数据包后,数据包先在内核空间中处理,若发现目的地址是自身,则传到用户空间中交给对应的应用程序处理,若发现目的不是自身,则会将包丢弃或进行转发。而netfilter就是根据iptables定义的规则来决定数据的去留。

    iptables实现防火墙功能的原理是:在数据包经过内核的过程中有五处关键地方,分别是PREROUTING、INPUT、OUTPUT、FORWARD、POSTROUTING,称为钩子函数,iptables这款用户空间的软件可以在这5处地方写规则,对经过的数据包进行处理,规则一般的定义为“如果数据包头符合这样的条件,就这样处理数据包”。具体原理不做深究。

    二 过滤ip (iptables)

    再说过滤ip前 有必要先了解下数据发往你这台主机的大概流向
    如下图所示
    图片来源网络
    数据包先经过PREROUTING 由该链决定数据包的走向

    • 目的地址是本地,则发送到INPUT,让INPUT决定是否接收下来送到用户空间,流程为①—>②;
    • 若满足PREROUTING的nat表上的转发规则,则发送给FORWARD,然后再经过POSTROUTING发送出去,流程为: ①—>③—>④—>⑥
    • 主机发送数据包时,流程则是⑤—>⑥

    而一般过滤ip 在INPUT链上过滤就行,如下
    iptables -I INPUT -s “192.168.0.1” -j DROP //禁止该ip的所有数据包访问
    iptables -I INPUT -s 192.168.1.0/24 -j DROP //禁用192.168.1.0-192.168.1.255 段ip 数据包的访问
    但是在iptables中,如果我们去匹配多个IP地址的话就会写入多条iptables的规则(这些IP都是无规律性的),当如果需要匹配几百甚至上千个IP地址的话,那么性能就会受到严重的影响。于是就有了ipset

    三 过滤ip (ipset)

    ipset在这个方面做了很大的改善,其最主要是的在结构和规则的查找上面做了很大的改善,当出现上面的情况的时候,ipset对性能就始终稳定在一个相对值上。根据提供的测试结果表明,当规则在300-1500之间的时候其对性能的影响基本是水平线。所以当你的防火墙规则过多的时候不妨试试看。而iptables其实本身并不存在性能的瓶颈,只是ip集优化的不对导致netfilter读取规则性能变低。而ipset其实是对ip集规则的优化

    1.安装

    http://ipset.netfilter.org/官网 下载ipset-6.34.tar.bz2

    tar xvf ipset-6.34.tar.bz2
    cd ipset-6.34
    ./configure
    make
    make install
    
    2.创建ipset
    ipset create blacklist hash:net   // 创建 ipset 集合 
    
    ipset -L   //  可查看创建的ipset集合
    
    ipset add blacklist 192.168.0.1  // 将ip 加入到创建的ipset集合
    ipset add blacklist 10.68.22.1  
    
    /* ---------------将创建的ipset集合 设置到添加到filter链,INPUT链 
     -----------------使得集合内的ip都过滤-------------------------------- */
    iptables -I INPUT -m set --match-set blacklist src   -j DROP
    service iptables save
    
    ipset del blacklist 10.68.22.1  //  从ipset集合中删除之前添加进的ip
    
    ipset save blacklist -f blacklist.txt  // 将ipset设置的集合保存到文件
    
    ipset destroy blacklist  // 删除ipset集合
    
    ipset restore -f blacklist.txt // 将之前保存的集合重新载入
    

    你会发现你可以随时在ipset集合中加入不同网段的ip 并且是动态的 即使iptables的规则正在使用这个集合,既集合中动态添加的ip,规则都能立马生效

    四 黑名单访问日志的跟踪

    ipset的加入会让你更加容易管理黑名单 但是项目有时候需要你跟踪黑名单里ip的访问 记录黑名单的访问时间和相关信息 所幸最终是iptables将ipset集合加入规则的 而iptables本身就开放了日志 而我们需要做的是开启独立的iptables日志

    1.在rsyslog.conf 添加配置
    /etc/rsyslog.conf中添加不同的日志级别(默认warn(=4))
    kern.*     /var/log/iptables.log
    重启日志配置: service rsyslog restart
    
    2.滚动日志配置

    所有的日志文件都会随着时间的推移和访问次数的增加而迅速增长, 因此必须对日志文件进行定期清理以免造成磁盘空间的不必要的浪费。liunx下有一个专门的日志滚动处理程序logrotate,logrotate能够自动完成日志的压缩、备份、删除工作,系统默认把logrotate加入到系统每天执行的计划任务中,这样就省得管理员自己去处理了
    在 /etc/logrotated.d/syslog 中追加以下语句:

    /var/log/kern-warn-log {
    rotate 50 剩余文件数
    postrotate
    /bin/kill -HUP `cat /var/run/syslogd.pid 2>/dev/null` 2>/dev/null || true
    endscript
    }
    
    3.在iptables规则加入日志跟踪(以之前设置的ipset黑名单为例)

    iptables -I INPUT -m set --match-set blacklist src -j LOG --log-prefix "ssh – blacklist "
    后测试验证:通过加入黑名单ip设备 去telnet本机ip 会发现连不通 同时去cat /var/log/iptables.log 得到如下信息
    记录黑名单访问的数据包
    而ssh – blacklist 就是iptables设置的一个标志信息 其中日志会显示数据包是从哪个网卡进来的 源数据mac,ip 和目的mac ip 数据包大小等信息。有兴趣可搜iptables默认日志字节对应的信息。

    展开全文
  • Linux 查看访问 IP

    万次阅读 2018-09-19 15:02:26
    Linux查看访问IP Linux 系统有很多用于快速处理数据的工具如 grep , awk , cut , sort , uniq , sort 可以帮助我们分析网络情况 , 他们非常非常地...通过 netstat -ntu , 找通过 tcp 和 udp 连接服务器的 IP 地...
  • linux kernel3.13环境下编写一个模块用netfilter来过滤IP地址,其中想在模块中打开存在磁盘上的ip.txt文档读入需要过滤的IP,但是用来filp_open()打开文件总是失败,按照网上说的get_fs;set_fs;get_fs;却依然失败...
  • linux c ip过滤 正则表达式 初步代码

    千次阅读 2013-07-05 16:28:54
    #include #include #include #include #include int main() { int cflags = REG_EXTENDED; regmatch_t pmatch[1]; const size_t nmatch = 1; int status, i;... char *pattern
  • linux tcp/ip协议栈

    2015-04-22 16:30:55
    分为上篇和下篇,上下篇共十八章,上篇九章部侧重于TCP/IP数据收发流程,即OSI模型的IP和TCP层,下篇也是九章,并不属于TCP/IP本身,但是多少和网络有关且常用到,比如LC-trie路由、netfilter包过滤防火、还有一些...
  • 主要介绍了Linux中在命令行中修改IP、网关、DNS的方法,需要的朋友可以参考下
  • Linux过滤防火墙

    2019-09-23 17:06:09
    Linux过滤防火墙 Netfilter 位于linux内核中的包过滤功能体系 称为linux防火墙的“内核态” Iptables 位于/sbin/iptables,用来管理防火墙规则的工具 称为linux防火墙的“用户态” 包过滤的工作层次 主要是网络层...
  • 1.过滤IP,如来源IP或者目标IP等于某个IP 例子: ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107 或者 ip.addr eq 192.168.1.107 // 都能显示来源IP和目标IP   Linux上运行的wireshark图形...
  • 而不像普通的iptables链是线性的存储和过滤,ip集合存储在带索引的数据结构中,这种结构即时集合比较大也可以进行高效的查找. 除了一些常用的情况,比如阻止一些危险主机访问本机,从而减少系统资源占用或网络拥塞
  • 很多情况下,你可能需要在Linux下屏蔽IP地址。比如,作为一个终端用户,你可能想要免受间谍软件或者IP追踪的困扰。或者当你在运行P2P软件时。你可能想要过滤反P2P活动的网络链接。如果你是一名系统管理员,你可能想...
  • 本文实例讲述了Python获取linux主机ip的简单实现方法。分享给大家供大家参考,具体如下: python有好几种方法可以获取主机的ip地址。我常用的一种是通过socket.socket().inet_ntoa()来实现,非常方便;但这种方法有个...
  • linux防火墙过滤规则

    千次阅读 2014-07-30 16:41:11
    linux 防火墙体系主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙。 包过滤机制:netfilter 管理防火墙规则命令工具:iptables netfilter 指linux内核中实现包过滤防火墙的内部...
  • ## 过滤出配置文件列表 ll | grep ifcfg ## 编辑配置文件 vi ifcfg-ens160 ## 配置文件内容 主要:BOOTPROTO IPADDR NETMASK NM_CONTROLLED ONBOOT 这几个字段,其他的不变 TYPE=Ethernet BOOTPROTO=static...
  • Linux iptables IP映射 跨网段访问

    千次阅读 2019-03-11 15:17:09
    Linux iptables IP映射 跨网段访问 19.1 前言 开发中,遇到一个跨多个网段访问设备内部局域网的问题。刚开始对这个跨网段的问题无从下手,但后面想了又想,难道不能让一个网口直接桥接到另外一个网口吗?顺着这个...
  • Linux查看登录IP以及对应的执行命令

    万次阅读 2018-04-14 15:43:11
    Linux服务器可以记录历史执行过的命令,以及最近登录过系统的IP 地址使用Last命令可以查出最近当前哪些IP地址登录过系统[root@wl-znddsjk ~]# lastroot pts/2 10.254.200.252 Sat Apr 14 15:26 still logged inroot ...
  • wireshark捕获/过滤指定ip地址数据包

    千次阅读 2015-10-09 15:50:56
    wireshark捕获/过滤指定ip地址数据包
  • 常用linux日志过滤命令

    千次阅读 2019-04-10 16:12:20
    Linux日志分析常用命令汇总 1、查看当天有多少个IP访问: awk ‘{print $1}’ log_file|sort|uniq|wc –l 2、查看某一个页面被访问的次数: grep “/index.php” log_file | wc –l 3、查看每一个IP访问了多少个页面...
  • eBPF用于Linux防火墙数据包过滤

    千次阅读 2019-11-03 17:25:21
    自基于Netfilter的iptables取代ipchains之后,Linux防火墙技术貌似一直停留在iptables,虽然近年来nftables被宣称有取代iptables之势,但事实上并无起色。 无论是晚期ipchains,还是iptables,或者nftables,其底层...
  • 问题描述:一个日志文件里逐行存储着 时间 ip 这种形式的日志,现在需要让你使用linux命令查找日志文件中访问量最大的10个ip 怎么处理? 1.首先创建模拟数据 这里博主用python写了个创建模拟数据的脚本 文件内容格式...
  • linux环境下的IP和MAC地址绑定

    千次阅读 2018-09-01 08:55:24
    linux环境下的IP和MAC地址绑定 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 92,784
精华内容 37,113
关键字:

linux过滤出ip

linux 订阅