2016年10月17日星期一

网络ping掉包原因

1. cpu使用率高
2. 网线问题,排除方法 show int g0/2,看crc校验值
3. 网口流量大,当流量占满接口带宽

cisco 日志时间戳

cisco 交换机 日志时间戳问题
默认,如果不配时间戳的话,就会使用0时区的时间,配一下这段后,才可以显示本地时间戳

  XYJ-C2960_9(config)#  
  XYJ-C2960_9#show clock  
  Oct 17 09:24:20: %SYS-5-CONFIG_I: Configured from console by admin on vty0 (172.16.11.198)  
  17:24:23.290 BeiJing Mon Oct 17 2016  
  XYJ-C2960_9#  
  XYJ-C2960_9(config)#  
  Oct 17 09:21:01: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/23, changed state to down  
  Oct 17 09:21:02: %LINK-3-UPDOWN: Interface FastEthernet0/23, changed state to down  
  Oct 17 09:21:05: %LINK-3-UPDOWN: Interface FastEthernet0/23, changed state to up  
  Oct 17 09:21:06: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/23, changed state to up  
  XYJ-C2960_9(config)#  
  XYJ-C2960_9(config)#service timestamps log datetime msec localtime show-timezone  
  XYJ-C2960_9(config)#service timestamps debug datetime msec localtime show-timezone  
  XYJ-C2960_9(config)#  
  Oct 17 17:25:40.481 BeiJing: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/23, changed state to down  
  Oct 17 17:25:42.494 BeiJing: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/23, changed state to up  

cisco 3850 上传镜像 与 FTP配置

引用下一篇文章:

Field Notice: Cisco IOS TFTP Client Cannot Transfer Files Larger than 16MB in Size

cisco IOS tftp客户端 不能够传输大于16MB的文件
我至少尝试使用 Tftpd32 and Tftpd64,cisco tftp server,还是linux下的tftp服务
都是会在传输中断开

最后我只能换其他办法,用FTP去完成任务
但是FTP也是不容易使用的

 XYJ-C2960_9#copy flash:c2960-lanbasek9-mz.150-2.SE8.bin ftp://ftp:@172.16.2.163   
 Address or name of remote host [172.16.2.163]?   
 Destination filename [c2960-lanbasek9-mz.150-2.SE8.bin]?   
 Writing c2960-lanbasek9-mz.150-2.SE8.bin   
 %Error opening ftp://*****@172.16.2.163/c2960-lanbasek9-mz.150-2.SE8.bin (Incorrect Login/Password)
 
 XYJ-C2960_9#copy flash:c2960-lanbasek9-mz.150-2.SE8.bin tftp:  
 Address or name of remote host []? 172.16.2.163  
 Destination filename [c2960-lanbasek9-mz.150-2.SE8.bin]?  
 !!.!.!.!!.!.!.....  
 %Error writing tftp://172.16.2.163/c2960-lanbasek9-mz.150-2.SE8.bin (Timed out)...  

其实我想实现的是,FTP服务器,允许匿名登录,并且有上传权限即可,

CentOS 6.3 下 vsftpd 匿名用户访问配置

可是没办法配置成功,最终采用了这种由用户登录的办法。

以下是FTP的配置办法,有用户列表的办法

 使用 yum 安装 vsftpd:  
             sudo yum install vsftpd  
 如果需要连接其他 FTP 服务器,则可以安装 FTP 客户端。  
             sudo yum install ftp 
 
 添加用户  
 adduser userftp  
 passwd userftp  
 禁止用户的 ssh 登录权限,只允许 FTP 访问:  
 usermod -s /sbin/nologin userftp 
 
 配置 VSFTP  
 打开配置文件:  
         sudo vi /etc/vsftpd/vsftpd.conf  
 关闭匿名访问:  
         anonymous_enable=NO  
 去掉 local_enable 的注释,修改为开启:  
         local_enable=YES  
 限制用户仅能访问自己的主目录:  
         chroot_local_user=YES  
 设置用户的主目录:(不设置时,默认为用户的家目录/home/userftp)  
         local_root=/data/test  
 重启服务:  
         sudo service vsftpd restart
 
 设置开机自启动:  
 chkconfig vsftpd on  
 连接测试  
 ftp userftp@112.126.74.124  
 ftp> pwd  
 Remote directory: /home/userftp  
 ftp> quit  
 221 Goodbye.  

最后show出我的成功案例
ftp://username:password@172.16.1.1
 XYJ-C2960_9#copy flash:c2960-lanbasek9-mz.150-2.SE8.bin ftp://imageup:!@#admin@172.16.1.1  
 Address or name of remote host [172.16.2.163]?   
 Destination filename [c2960-lanbasek9-mz.150-2.SE8.bin]?   
 Writing c2960-lanbasek9-mz.150-2.SE8.bin !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  
 11834846 bytes copied in 48.864 secs (242200 bytes/sec)  

2016年10月14日星期五

网络流量监测的用处

当有一天,有同事怀疑你的网络有问题的时候,
可以通过zabbix监控去看出是否出现过网络中断的情况,
这可以成为有力的证据

同样的防火墙的日志也是尤为重要的。

如果需要对网络进行访问控制策略的制定,但是你又不太了解网络的时候
这时候你需要科来的矩阵功能,加上ntopng的检索功能,它们可以帮你
完成不少的事情,最后不知道的再去询问吧。以下是使用方法:

 ntopng     +    科莱
     |
  检索 <------- 矩阵 
     |
  主机  -------------> Talker 查看实时流量
     |    \______________ 如果是web服务器,Flow查看url
     |
protocol
     |
服务器类型

2016年10月13日星期四

python 打印原始变量值

使用print打印出来,默认将 \r\n  or  \n 自动进行换行然后才输出的
要想输出不换行,并且打印出原始字符,就用 str()
看下面示例代码:

1:  @DELL-PC[C:startups]|1> a = 'sdafasdfhjkj\r\nsadfasdf'  
2:  @DELL-PC[C:startups]|2> a  
3:                      <2> 'sdafasdfhjkj\r\nsadfasdf'  
4:  @DELL-PC[C:startups]|3> print a  
5:  sdafasdfhjkj  
6:  sadfasdf  
7:  @DELL-PC[C:startups]|4> str(a)  
8:                      <4> 'sdafasdfhjkj\r\nsadfasdf'  
可以在测试正则表达式的地方派上用处

2016年10月12日星期三

python 模块之间调用变量与函数

python模块之间的变量调用与命名空间有很大关联

每个模块之间的变量都是独立的命名空间
而命名空间又有globals() 与locals()
所以使用global去定义全局变量是无法再模块之间去调用的 (已经通过实验证实)

当一行代码要使用变量 x 的值时,Python会到所有可用的名字空间去查找变量,按照如下顺序:
1.局部名字空间 - 特指当前函数或类的方法。如果函数定义了一个局部变量 x,Python将使用这个变量,然后停止搜索。
2.全局名字空间 - 特指当前的模块。如果模块定义了一个名为 x 的变量,函数或类,Python
  将使用这个变量然后停止搜索。
3.内置名字空间 - 对每个模块都是全局的。作为最后的尝试,Python将假设 x 是内置函数或变量。

所以只能通过以下方法实现:
1:  import sys  
2:      sys.module['__main__'].vars  

if __name__ = '__main__': 作用:
在模块测试代码的时候就用使用
如果在它之后的代码被运行,说明该模块是直接运行的,也就说主模块
如果在它之后的代码没有被运行,说明该模块是被模块调用的

比如有一个varmain.py脚本
varmain.py实际上是两个模块,一个是__main__,一个是varmain,也就是说,这个文件会被载入两次。
你设置的是__main__中的hello,不是varmain中的hello。

__init__.py文件的作用:
如果一个文件夹下面有这个文件,说明它被档次package使用了
当用该package的时候,这个文件就会被执行一遍

1:  附:模块查找的顺序  
2:        sys.path 可以查看到  
3:        sys.path.append 可以增加搜索路径  
4:        先是查找当前路径下  
5:        再去查找lib目录  
6:        最后是 site-packages  


Question:
还有python的原始关键字如何打印与保存,并且用于正则表达式的测试

参考链接:
1. python实现调用其他python脚本的方法,实现调用python脚本
2. Python脚本报错AttributeError: ‘module’ object has no attribute’xxx’解决方法
3. Python 中的模块和包
4. Python导入模块的几种姿势
5. [Python学习] 专题六.局部变量、全局变量global、导入模块变量






2016年10月7日星期五

Ntopng 本地流量矩阵

部署环境
debian 8 jessie 
ntopng 3.0

1. 准备多一个网卡,用于接受镜像流量
2. 网卡配置混杂模式
#将下面两行加入/etc/rc.local
ifconfig eth1 up
ifconfig eth1 promisc

3. netstat -i 查看网口是否在 promiscuous 模式

      The flag will be updated to BMPRU. Flag details are as follows:
  • B flag is for broadcast
  • M flag is for multicast
  • P flag is for promisc mode
  • R is for running
  • U is for up
4. 在Debian环境下,是没有nbox这个软件包的,只在Ubuntu才有。

Ntopng配置

Local Hosts Active Flows Matrix功能

 提示

 No local hosts can be found   

 的解决方法

在配置文件中去定义哪些是本地网络,就可以再矩阵中看到,方便分析

ntopng 配置文件 /etc/ntopng/ntopng.conf  加入

 --local-networks="10.0.0.0/24,172.16.0.0/16,192.168.0.0/16"   

重新启动ntopng就可以看到流量矩阵了



参考链接: