防止ARP攻击的shell代码_linux shell

复制代码 代码如下:

#!/bin/bash
declare gw=`route -n | grep -e '^0.0.0.0'`
declare gwname=`echo $gw | grep -oe '\w*$'`
declare gwip=`echo $gw | grep -oe '[0-9]\{2,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'`
declare gwmac=`arp -n | grep -e $gwip | grep -oe '[0-9A-F]\{2\}:[0-9A-F]\{2\}:[0-9A-F]\{2\}:[0-9A-
F]\{2\}:[0-9A-F]\{2\}:[0-9A-F]\{2\}'`
echo "switch $gwname arp: $gwip - $gwmac to static"
arp -s $gwip $gwmac
echo "done, off arp reuqest .."
ifconfig $gwname -arp
echo "all done."

解决linux下ARP攻击的方法

Windows下的用户可以使用antiArp防火墙,基本上能解决问题,可是喜欢linux的兄弟姐妹们怎么办呢,我今天就遇到这个档子烦心事。
我用的是fedora core 6,我先把几个镜像文件挂上,用关键字arp一搜,就搜到了arptables,和arpwatcher 首先是arpwatcher了,它好像只能监控本机ip/arp地址的改变之类的,好像不能防止arp攻击。 再一看arptables,立马想到了iptables,装上一看,果然,命令行都一模一样。 可是问题来了,保持本机不受arp攻击很简单(用静态arp绑定就可以了),但是人家网关也还是要受到攻击, 俺们又不是网络管理员,网关我只能 “远观而不能亵玩“!
此路不通,俺们改道,arping这个东西映入我的眼帘,回到shell,发现已经安装拉:
“arping - send ARP REQUEST to a neighbour host“arping [ -AbDfhqUV] [ -c count] [ -w deadline] [ -s source] -I interface destination-U Unsolicited ARP mode to update neighbours' ARP caches. No replies are expected.
关键命令:
arping -U -I 发送包的网卡接口 -s 源ip 目的ip
实例:
假设你的eth0接口对应的ip为192.168.1.1,网关为192.168.1.255你就可以使用
arping -U -I eth0 -s 192.168.1.1 192.168.1.255

时间: 2025-01-20 19:50:21

防止ARP攻击的shell代码_linux shell的相关文章

ubuntu与centos中更换ip的shell代码_linux shell

代码一ubuntu与centos 复制代码 代码如下: ubuntu:#!/bin/bashecho "ipaddr:"read lineecho $linesed "s/address.*$/address=${line}/g" /etc/network/interfacescentos(未测试):#!/bin/bashecho "ipaddr:"read lineecho $linesed "s/IPADDR.*$/IPADDR=$

比较两个字符串是否相等的shell代码_linux shell

比较两个字符串是否相等的办法是: if [ "$test"x = "test"x ]; then 这里的关键有几点: 1 使用单个等号 2 注意到等号两边各有一个空格:这是unix shell的要求 3 注意到"$test"x最后的x,这是特意安排的,因为当$test为空的时候,上面的表达式就变成了x = testx,显然是不相等的.而如果没有这个x,表达式就会报错:[: =: unary operator expected 二元比较操作符,比较

ping发现掉包报警的shell代码_linux shell

复制代码 代码如下: #!/bin/bash PING=`which ping` DATE=`date +%Y%m%d%H%M` TAIL=`which tail` LOG=./ping$DATE.log HOSTS="selboo.com.cn 221.130.191.97" COUNT=200 for myHost in $HOSTS do count=$(ping -c $COUNT $myHost | grep 'loss' | awk -F',' '{ print $3 }'

Linux shell实现HTTP服务示例代码_linux shell

一.前言 使用代理服务器 HAProxy 对 Mysql 做负载均衡是常用方案,为提高可用性,当某个 Mysql 出现问题时,例如服务器故障了,或者数据复制中断了,最好可以让 HAProxy 马上知道,然后停止向其转发请求 HAProxy 如何知道 Mysql 是否有问题呢? 二.解决思路 (1)编写一个shell脚本,检查 mysql 的状态,然后输出结果,例如状态正常时,返回状态码200及正确信息,否则返回状态码503及错误信息 (2)实现一个HTTP服务,有请求连接后,调用上面的检查脚本,

对用户输入的判断的shell实现代码_linux shell

今天的案例是将 对用户输入的判断的 #!/bin/sh # validint -- Validates integer input, allowing negative ints too. function validint { # Validate first field. Then test against min value $2 and/or # max value $3 if they are supplied. If they are not supplied, skip these

linux shell txt转换成html的实现代码_linux shell

原理: awk命令,分割格式化的txt(txt文件格式以"|"分割开的)成数组,然后拼接成html格式(html - head - title - body - table) shell源码 # !/bin/sh file_input='txt.log' file_output='txt2html.html' td_str='' function create_html_head(){ echo -e "<html> <body> <h1>

nagios 分发文件实现代码_linux shell

Nagios是一款开源的免费网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知. #!/bin/bash #!/usr/bin/expect -f #!/usr/bin/env bash for((i=101;i<=177;i++)) do #cmd="wget http://172.16.92.99/scripts/nagios_c

收集的55个Linux系统管理中常用的一些shell命令_linux shell

1.显示消耗内存/CPU最多的10个进程 复制代码 代码如下: ps aux | sort -nk +4 | tail ps aux | sort -nk +3 | tail 2.查看进程 按内存从大到小排列 复制代码 代码如下: ps -e  -o "%C  : %p : %z : %a"|sort -k5 -nr 3.按cpu利用率从大到小排列 复制代码 代码如下: ps -e  -o "%C  : %p : %z : %a"|sort  -nr 3.查看Apa

Linux Shell简介_linux shell

前言 第一篇:超级工具/Terminals,xterms 和 Shells 一.超级工具 二.为了说明 shell ,这里需要一些背景知识. 1.Terminals, xterms 与 Shells 2.终端(Terminals) 3.xterms 4.Shells 三.Shell 起步 第二篇:自动补齐/命令行的历史记录/编辑命令行/可用的 Shell 快捷方式 一.自动补齐: 二.命令行的历史记录 三.可用的 Shell 快捷方式 第三篇:命令的排列/命令的任务调度/命令的替换 一.命令的排