⑬IPv6
Windows:
netsh interface ipv6 add address “ローカル エリア接続” 2012::102
netsh interface ipv6 delete address “ローカル エリア接続” 2012::102
Linux:
[IPv4]
<1>ifconfig eth0:1 192.168.88.99 netmask 255.255.255.0
ifconfig eth0:1 up | down
//激活或关闭设备eth0
route add default gw 192.168.88.1
//配置默认网关
<2>vi /etc/sysconfig/network-scripts/ifcfg-eth0
//修改IP地址
vi /etc/sysconfig/network
//修改网关
vi resolv.conf
//修改DNS
/etc/init.d/network restart
//重启网络配置
service network restart
<3>ifconfig eth0:1 192.168.88.108 del
[IPv6]
ifconfig eth0 inet6 add 2001:db8:290c:1291::89 up
ifconfig eth0 inet6 del 2001:db8:290c:1291::892001:db8:290c:1291::89
Unix:
ifconfig lan0 inet6 up
ifconfig lan0:1 inet6 2001:db8:290c:1291::23
使用例:
./monitor.sh /opt/UMF/Operations/Manager/bin/NvPROBaseMgr 60 NvPROBaseMgr_log.csv
./monitor.sh /opt/UMF/Operations/Manager/bin/SysMonMgr 60 SysMonMgr_log.csv
nvaCreateNodeMgr.exe TEst -rulestatus On -getcomm public -ipv4 172.28.140.102 -r 1 1000
NVT_nvaSetMgr.exe TEst 11.1.8.0 172.20.30. -r 1 1000 -v 151 251
NVT_nvaSetMgr.exe TEst 11.1.46.0 ffff-ffff-ffff-fffe -r 1 3000
baptost.exe 1.3.6.1.2.1
NvPROAmibGetMgr NodeName AmibName
[INTEGER 13.1]
[DisplayString 11.1.1]
ICMP情報(icmpmib)
IPv4:
NvPROAmibGetMgr node:* 13.1
IPv6:
NvPROAmibGetMgr node:* 20.1
nvpalertsend.exe -level
トラップ「Trap」
linkDown: 1.3.6.1.6.3.1.1.5.3
linkUp: 1.3.6.1.6.3.1.1.5.4
mv abc /home/wy/Desktop/将当前目录下的abc文件夹移动到/home/wy/Desktop/ 目录下
AS5-117 src # rm -rf compile
1 find . -name “*” -type d -exec rm -rf {} ツ・; 查找
2 cp -p libNvPROBaseAPIMgr.so libNvPROBaseAPIMgr.so.ORG 备份
3 cp -p libNvPROBaseAPIMgr.so /opt/UMF/Operations/Manager/bin 拷贝到 安装目录下
4
5 ps -ef|grep Mgr |grep -v grep 查找 运行服务的PID
NvPROBaseMgr
在安装目录下
nvstop
ps -ef |grep NvPROBaseMgr
nvset
gdb NvPROBaseMgr
◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
MainAddress:obj.cmn.cmnMainAddress
IFアドレス:11.1.31.3.1.1
HP 抓包
nettl -tn all -e ns_ls_icmp -f /tmp/tcpdump
nettl -tf -e all
Linux抓包
tcpdump
-v 3 -u myv3 -l authNoPriv -A authpass123 -C f 172.28.140.64 1.3.6.1.2.1.1.5.0
export LANG=ja_JP.utf8
5.0 之前版本安装 要搞DB 在已经安装server2005 的情况下
需要以下操作
-v 3 -u myv3 -l authNoPriv -A authpass123 -C i -e 80001f8880613e0000a251ff5000000000 172.28.140.40 .1.3.6.1.6.3.1.1.5.3 ifIndex
{
}
Administrator
8000007708417a0000e5855f52
清除 安装的文件
cd /etc/
rm -rf FW_Registry/
snmp:
PUD:The snmp protocol data unit.
pkill -9 testv3.sh
gdb
gcc -o test -g test,c
gdb test -c test.c
gdb 调试CORE 文件 bt (wingdb kb)
snmptrap -W10 -G 1 -v 3 -u snmpuser -C i -l authPriv -A 12345678 -X 12345678Array -a MD5 -e 8000007708417a0000e5855f52 172.28.140.66 0 1.3.6.1.4.1.119 1.3.6.1.4.1.119 s 1234567890
tar czvf nec.tgz nec
sftp 172.28.140.49
tar xzvf nec.tgz nec
nv66-64 opt # tar czvf nec.tgz nec^C
nv66-64 opt # sftp 172.28.140.49
Connecting to 172.28.140.49…
root@172.28.140.49’s password:
sftp> cd /
sftp> cd /opt
sftp> put nec.tgz
Uploading nec.tgz to /opt/nec.tgz
nec.tgz
sftp> quit
nv66-64 opt # ssh 172.28.140.49
root@172.28.140.49’s password:
Last login: Wed Apr 16 11:11:01 2014 from 172.28.140.102
rh5 ~ # cd /opt
grep -rn “hello,world!” ./ 查找字符串
新规amib定义文件 加到public 目录下面,
ulimit -c unlimited //当前目录输入core文件
HP 调试NvPROBaseMgr 要 nvset一下
valgrind –tool=memcheck –leak-check=full ./test
reateUser snmptopwalkv3 MD5 “1qa2ws3ed4rf5tg” DES snmp
adding the following line to /etc/snmp/snmpd.conf:
snmpinform -v 3 -u snmpuser -l noAuthnoPriv -e 8000007708417a0000e5855f52 172.28.140.40 0 1.3.6.1.4.1.119 1.3.6.1.4.1.119 s 1234567890
————————————-
SVN 命令
svn checkout URL
对于新加的文件要先add 再 commit
svn add .
svn commit -F /opt/LOG.txt .
查看文件状态
svn status
更新本地代码
svn update .
删除服务器上的文件
svn delete XXXX
$ svn delete myfile
D myfile
$ svn commit -m “Deleted file ‘myfile’.”
Deleting myfile
Transmitting file data .
Committed revision 14.
————————————-
export MALLOC_CHECK_=3
valgrind –tool=memcheck –leak-check=full NVT_SampleAPMgr_Linux “unicode (utf-8)” 65001
—————
#99bug
ifconfig lan0:1 up
ifocnfig lan0 up
route add default gw 172.28.140.1
—————
——————————————————————–
HP-UX network config
bash-4.2# ifconfig lan0
lan0: flags=1843<UP,BROADCAST,RUNNING,MULTICAST,CKO>
inet 172.28.138.23 netmask ffffffe0 broadcast 172.28.138.31
lan0: flags=4800841<UP,RUNNING,MULTICAST,PRIVATE,ONLINK>
inet6 fe80::1 prefix 10
bash-4.2# ifconfig lan0:!
invalid interface name lan0:!
bash-4.2# ifconfig lan0:1
lan0:1: flags=1843<UP,BROADCAST,RUNNING,MULTICAST,CKO>
inet 172.28.138.35 netmask ffffffe0 broadcast 172.28.138.63
bash-4.2# ifconfig lan0:1 up
——————————————————————–
SJIS
Windows : CP932の範囲(参考:http://charset.uic.jp/show/cp932/)
Linux : Shift-JISの範囲(参考:http://charset.uic.jp/show/shift_jis/)
HP-UX : Shift-JISの範囲(参考:http://charset.uic.jp/show/shift_jis/)
EUC-JP
Windows : CP51932の範囲(参考:http://charset.uic.jp/show/cp51932/)
F9A0~FCFFが未サポート
Linux : CP20932の範囲(参考:http://charset.uic.jp/show/euc-jp/)
HP-UX : CP20932の範囲(参考:http://charset.uic.jp/show/euc-jp/)
JIS X 0213-2000とJIS X 0213-2004が未サポートです。
///Log
DWORD LOG_OUT (
PNVSOCKMSG som, //ソケットメッセージ
int cmd, //コマンド番号
LPNVDNODE reqdp, //要求パケット
LPNVDNODE *rspdpp //応答パケット
)
{
DWORD dwError = 0;
int fd, len;
char* g_bufGet= NULL;
//long len = 0;
FILE* fpGet = NULL;
if (som == NULL || cmd != AMMC_LOG || reqdp == NULL || rspdpp == NULL) {
dwError = NV_EBADARG;
goto done;
}
g_bufGet = (char*)calloc(1, 100);
if (g_bufGet == NULL) {
goto done;
}
fpGet = fopen(“/opt/snmp_receive_data.txt”, “a+”);
if (fpGet == NULL) {
goto done;
}
sprintf(g_bufGet, “snmp_trap_receive: %llu MSEL, g_dwCountGet:%d\n”, g_cGet, g_dwCountGet);
dwError = fwrite(g_bufGet, strlen(g_bufGet), 1, fpGet);
fflush(fpGet);
fclose(fpGet);
free(g_bufGet);
g_bufGet = NULL;
g_dwCountGet = 0;
g_cGet = 0;
done:
//LOG 0UT
return 0;
}
static LONGLONG g_cGet = 0;
static DWORD g_dwCountGet = 1000;
static FILE *fpGet = NULL;
static char* g_bufGet= NULL;
void test()
{
#ifndef WIN32
//hejian
long long L1 = 0, L2 = 0;
timeval tv;
#endif
#ifndef WIN32
//hejian
if (g_bufGet == NULL) {
g_bufGet = (char*)calloc(1, 30);
}
if (fpGet == NULL) {
fpGet = fopen(“/opt/snmp_receive_data.txt”, “a+”);
}
gettimeofday(&tv,NULL);
L1 = tv.tv_sec*1000*1000 + tv.tv_usec;
#endif
//
/
/
do something
//
//hejian
#ifndef WIN32
gettimeofday(&tv,NULL);
L2 = tv.tv_sec*1000*1000+tv.tv_usec;
g_cGet += (L2 -L1);
g_dwCountGet–;
if (g_dwCountGet == 0) {
sprintf(g_bufGet, “snmp_trap_receive: %llu MSEL\n”, g_cGet);
if (fpGet) {
fwrite(g_bufGet, 50, 1, fpGet);
fclose(fpGet);
fpGet = NULL;
free(g_bufGet);
g_bufGet = NULL;
}
g_dwCountGet = 1000;
}
#endif
}
//
4MIB (iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.2008.*)是加到public/amib文件夹中的数据
NVT_nvaAsyGetSvc node:* iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.2008.*,iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.2009.*,iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.2010.*,iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.2011.* -silent -super
//
windbg
SRV*E:\windbg\Symbol\SysSymbol*http://msdl.microsoft.com/download/symbols;srv*;E:\windbg\Symbol\UserSymbol
1 启动windbg,加载BadAces.exe
File->Open Executable
2 运行和暂停
运行:输入g
暂停:Ctrl+Break 或 Debug->Break命令
3 设置端点
bu 函数名 或者
bp addr
4查看栈信息
k — 栈信息
kp — 显示栈和类型信息
kb –显示栈和参数
.frame # — 到具体某个栈,#栈号
!address — 查看内存页信息
例. !address eax
!analyze -v 扩展显示当前异常的详细信息
!peb —- 打印 程序加载各个模块的内存地址
ln 地址 —– 显示该地址对应的函数名称
____________________________________________
进程间通信(ipc)
进程间通信信息查看命令:ipcs
____________________________________________
/网络延时设置/
①清空已有iptables配置,执行下面的命令
iptables -F
②使Linux报文转发功能开启,执行下面命令
echo 1 > /proc/sys/net/ipv4/ip_forward
③设定iptables,开启nat地址转换功能,执行下面命令
iptables -t nat -A POSTROUTING -o br-ex -s 10.1.1.0/24 -j MASQUERADE
④使用tc命令控制流量(网络延迟)
tc qdisc add dev eth1 root netem delay 1ms
注:
A:机器有两块网卡eth0和eth1,这里br-ex是eth0的桥接(看做等同就可以了,openstack用)
eth0:172.28.140.4/24
eth1:10.1.1.104/24
B:上面1ms是1毫秒,可根据实际情况改变设置。
■SVC使用方法说明
①SVC所在机器ip地址配置成10.1.1.0/24网段
例如: 10.1.1.100 255.255.255.0
②配置缺省网关为10.1.1.104
windows 停止服务命令
net stop mysql
net start mysql
————————
gdb 打印完整字符串
set print element 0
print src
————————
7、结构体的sizeof
struct S1
{
char c;
int i;
};
问sizeof(s1)等于多少聪明的你开始思考了,char占1个字节,int占4个字节,那么加起来就应该是5。是这样吗?你在你机器上试过了吗?也许你是对的,但很可能你是错的!VC6中按默认设置得到的结果为8。
这是因为结构体遵循字节对齐原则,为什么需要字节对齐?计算机组成原理教导我们这样有助于加快计算机的取数速度,否则就得多花指令周期了。
为此,编译器默认会对结构体进行处理(实际上其它地方的数据变量也是如此),让宽度为2的基本数据类型(short等)都位于能被2整除的地址上,让宽度为4的基本数据类型(int等)都位于能被4整除的地址上,以此类推。
这样,两个数中间就可能需要加入填充字节,所以整个结构体的sizeof值就增长了。
字节对齐的细节和编译器实现相关,但一般而言,满足三个准则:
(1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除;
(2) 结构体每个成员相对于结构体首地址的偏移量(offset)都是成员大小的整数倍,如有需要编译器会在成员之间加上填充字节(internal adding);
(3) 结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在最末一个成员之后加上填充字节(trailing padding)。
由于结构体的成员可以是复合类型,比如另外一个结构体,所以在寻找最宽基本类型成员时,应当包括复合类型成员的子成员,而不是把复合成员看成是一个整体。但在确定复合类型成员的偏移位置时则是将复合类型作为整体看待。
这里叙述起来有点拗口,思考起来也有点挠头,还是让我们看看例子吧:
struct S3
{
char c1;
S1 s;
char c2
};
S1的最宽简单成员的类型为int,S3在考虑最宽简单类型成员时是将S1“打散”看的,所以S3的最宽简单类型为int,这样,通过S3定义的变量,其存储空间首地址需要被4整除,整个sizeof(S3)的值也应该被4整除。sizeof(S3)的值为16。
到这里,朋友们应该对结构体的sizeof有了一个全新的认识,但不要高兴得太早,有一个影响sizeof的重要参量还未被提及,那便是编译器的pack指令。它是用来调整结构体对齐方式的,不同编译器名称和用法略有不同,
VC6中通过#pragma pack实现,也可以直接修改/Zp编译开关。#pragma pack的基本用法为:#pragma pack( n ),n为字节对齐数,其取值为1、2、4、8、16,默认是8,
如果这个值比结构体成员的sizeof值小,那么该成员的偏移量应该以此值为准,即是说,结构体成员的偏移量应该取二者的最小值,公式如下:
offsetof( item ) = min( n, sizeof( item ) )
再看示例:
#pragma pack(push) // 将当前pack设置压栈保存
#pragma pack(2) // 必须在结构体定义之前使用
struct S1
{
char c;
int i;
};
struct S3
{
char c1;
S1 s;
char c2
};
#pragma pack(pop) // 恢复先前的pack设置
计算sizeof(S1)时,min(2, sizeof(i))的值为2,所以i的偏移量为2,加上sizeof(i)等于6,能够被2整除,所以整个S1的大小为6。同样,对于sizeof(S3),s的偏移量为2,c2的偏移量为8,加上sizeof(c2)等于9,不能被2整除,添加一个填充字节,所以sizeof(S3)等于10。
注意,“空结构体”(不含数据成员)的大小不为0,而是1。
———————————————————————————————————————-
关于19上的snmpv3用户名以及密码
1.停止snmpd服务
#service snmpd stop
2.增加snmpv3用户,并设置认证以及加密方式
nv3 ~ # net-snmp-create-v3-user
Enter a SNMPv3 user name to create:
xiaoye
Enter authentication pass-phrase:
xiaoyepw
Enter encryption pass-phrase:
[press return to reuse the authentication pass-phrase]
xiaoyepk
adding the following line to /var/lib/net-snmp/snmpd.conf:
createUser xiaoye MD5 “xiaoyepw” DES xiaoyepk
adding the following line to /etc/snmp/snmpd.conf:
rwuser xiaoye
3.启动snmpd服务
# service snmpd restart
现通过snmpwalk测试一下:
# snmpwalk -v3 -uenocsnmpv3 -lauth -aMD5 -A”enocsnmpv3pw” -X”enocsnmpv3pk” localhost | more
SNMPv2-MIB::sysDescr.0 = STRING: Linux CentOS60A 2.6.32-71.el6.i686 #1 SMP Fri Nov 12 04:17:17 GMT 2010 i686
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::org
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (9443) 0:01:34.43
关于engine ID : 工程环境设定上的是inform 用的。
设备属性上的是get 用的,用来跟设备上的匹配。
-e ENGINE-ID set security engine ID (e.g. 800000020109840301) 这个就是我们发inform 时指定的那个(工程环境设定)
snmpinform -v 3 -u xiaoye -l authPriv -A xiaoyepw -X xiaoyepk -a MD5 -e 8000007708
9d2500009dbb1055 172.28.140.49 0 1.3.6.1.4.1.119 1.3.6.1.4.1.119 s 1234567890
-E ENGINE-ID set context engine ID (e.g. 800000020109840301) get 用
—————————————————————————————————————————
gdb 断点
break 46 if testsize==100
———————–
wireshark 抓包
———————–
ip.src == 192.168.0.1
ip.dst == 192.168.0.1
ip.addr == 192.168.0.1
排除以上的数据包,我们只需要将其用括号囊括,然后使用 “!” 即可。
表达式为:!(表达式)
(1)捕获某一端口的数据包
表达式为:tcp.port == 80
(2)捕获多端口的数据包,可以使用and来连接,下面是捕获高端口的表达式
表达式为:udp.port >= 2048