需要修改php_screw.c
把第78,84,93行的org_compile_file(file_handle, type);
修改为:
org_compile_file(file_handle, type TSRMLS_CC);
官方BUG列表:http://sourceforge.net/tracker/i ... 025&atid=465440
Submitted by admin on 2011, July 13, 8:43 AM
需要修改php_screw.c
把第78,84,93行的org_compile_file(file_handle, type);
修改为:
org_compile_file(file_handle, type TSRMLS_CC);
官方BUG列表:http://sourceforge.net/tracker/i ... 025&atid=465440
Submitted by admin on 2011, July 12, 11:57 AM
Rom 更新实用程序 (RUU)开始准备
运行 ROM 更新实用程序 (RUU) 前,请确认下列事项:
· Android 手机已安装了正确的电脑驱动程序。
· Android 手机已通过 USB 线连接到了电脑。电脑必须能识别 Android 手机。
· 电脑的待机或休眠模式已禁用。
· 关闭电脑上所有正在运行的应用程序。
重要注意事项 除非 RUU 向导指示,否则不要对 Android 手机进行交互操作。
安装 ROM 更新实用程序 (RUU) 的一般步骤
1. 安装 ROM 更新实用程序 (RUU) 将会删除 Android 手机上的所有信息和数据。建议您使用 PC 同步工具将 Android 手机上的个人数据备份到电脑上。
2. 在电脑上运行 ROM 更新实用程序 (RUU) 将 ROM 更新安装到 Android 手机上。(下一节内容将详细介绍如何安装 ROM 更新)。
3. 使用 PC 同步工具将您的数据恢复到 Android 手机上。
如何安装 ROM 更新
警告:安装 ROM 更新实用程序 (RUU) 将会删除 Android 手机上的所有信息和数据。
1. 在欢迎页面,单击下一步开始 RUU 安装。
2. 查看对话框中所列指示,确认已按要求操作。单击下一步继续。
3. 将显示一条信息,表明工具正在验证和获取关于 Android 手机的信息,为更新作准备。等待此验证过程完成。
4. 验证完成后,将显示关于 Android 手机的当前信息。单击更新继续。
5. 下面将显示 Android 手机信息、关于当前映像版本以及新映像更新版本的信息。如果确定要安装新 RUU,请单击下一步继续。
6. 将显示一条确认信息,表明在 Android 手机上安装必要文件 (包括无线电通讯模块映像) 所需时间。单击下一步开始更新。更新过程中,屏幕上会显示不停变化的进度条。
注:在更新过程中,进度条可能会停止移动。这是正常现象,因为 RUU 正在自动进行调整以完成更新。
7. 如果显示以下画面,表示 RUU 更新已完成。单击结束退出工具。
疑难解答及错误恢复
几乎所有 RUU 错误均可恢复。出现错误时,工具将显示错误信息,并提供恢复方法让您继续进行更新。
如果错误无法恢复,请参见常见问题中的详细信息。
错误 [110]:文件打开错误
此错误信息表示 RUU 缺少某些文件或那些文件已损坏,因此 RUU 无法继续进行更新。您必须安装完整的 RUU 程序包,然后再重试。
错误 [120]:主电池电量
如果 Android 手机的电池电量不足 (电池电量应大于 30%),将显示此错误信息。虽然 RUU 会提示您插接交流适配器,但仍需确认您的 Android 手机有足够电量完成更新。(Android 手机在连接到电脑安装 RUU 时无法对电池进行充电)。
错误 [121]:屏幕锁定
如果 Android 手机启用了屏幕锁定功能,将显示此错误信息。您应先禁用锁定状态,才能继续进行 RUU 更新。
错误 [130]:型号 ID 错误
错误 [131]:客户 ID 错误
如果使用错误的 RUU 进行更新,将显示上面其中一条错误信息。RUU 会检查型号 ID 和语言 ID 是否与 Android 手机兼容。请务必使用正确的 RUU 进行更新。
错误 [155~159]:映像错误
如果使用不正确的 RUU 进行更新,且映像文件超出 Flash ROM 大小,将显示上面其中一条错误信息。在这种情况下,请下载正确的 RUU 版本,然后再重试。
错误 [170]:USB 连接错误
如果 Android 手机没有正确连接到主机电脑上,将显示此错误信息。这可能是 USB 连接问题,也可能是电脑 USB 驱动程序的问题。请确保 Android 手机正确连接到主机电脑上,并/或检查电脑驱动程序是否与Android 手机相匹配。
RUU 更新常见问题
1. 问:向服务中心寻求帮助前我应该做些什么?
答:将电脑安装屏幕上显示的错误信息 (错误编号) 记录下来,这样就能将错误情况告诉服务中心人员。
2. 问:验证过程要多长时间才能完成?
答:验证过程大约需要 1 分钟,但仍要取决于您电脑的速度。
3. 问:如果 Android 手机上的进度条不动了,我应如何处理?
答:不要进行任何操作。这是正常现象,因为 RUU 正在自行调整以完成该程序。如果没有出现操作提示,不要断开 Android 手机与电脑的连接使该进程中断。
4. 问:在更新过程中,进度条在移动。如果显示错误信息 (错误 [150], [151]…[159]),应如何操作?
答:如果遇到连接中断、电源中断、电脑主机当机或其他意外原因时,可能会出现此情况。Android 手机屏幕上会显示相应信息。如果进度条在移动,表明更新正在进行,Android 手机会自动重新启动,更新成功。如果 Android 手机屏幕显示“失败”的红色字样或屏幕变黑,表示更新失败。Android 手机将无法进入 Android 界面。此问题一般可以恢复。您需要按照错误信息框中的指示进行操作,即重置 Android 手机,再次运行 RUU。
5. 问:在更新过程中,进度条有几分钟停止移动,但没有显示错误信息,应该怎么办?
答:您可先拔下 Android 手机上的 USB 线,看是否会显示错误信息。如果显示错误信息,请按照提示进行恢复。如果没有显示错误信息,请重置 Android 手机,重新运行 RUU。如果问题仍然存在,请重新启动电脑,然后再重试。
6. 问:如果遇到错误 [170]:USB 连接错误,我应如何处理?
答:您可以重置 Android 手机,再次运行 RUU。如果问题仍然存在,请重新启动电脑,然后再重试。
7. 问:如果遇到错误 [120]:主电池电量不足,我应如何处理?
答:如果 Android 手机的电池电量不足 (电池电量应大于 30%),将显示此错误信息。虽然 RUU 会提示您将手机插上交流适配器,但仍需确认您的 Android 手机有足够电量进行 ROM 更新。Android 手机在 RUU 更新过程中无法为电池充电。
8. 问:如果遇到错误 [121]:屏幕锁定,应如何处理?
答:如果 Android 手机启用了屏幕锁定功能,将显示此错误信息。您应先禁用锁定状态,才能继续进行 RUU 更新。
9. 问:我用 RUU 进行更新,但没有成功。现在我的 Android 手机始终以 RUU 失败模式启动,再也无法进入 Android 主界面,应该如何处理?
答:这是正常现象,可以恢复。请按以下指示重置 Android 手机,再与电脑进行连接。
1. 从 Android 手机上拔下 USB 线。
2. 重置 Android 手机 (取出再重新装上电池)。
3. 将 USB 线重新插到 Android 手机上。
4. 检查电脑是否能识别 Android 手机。
5. 返回 ROM 更新实用程序。
Submitted by admin on 2011, July 10, 10:12 AM
linux 支持的 tunnel 有 ipip gre sit 其他非内核隧道这几种。
ipip 需要内核模块 ipip.ko 下面的描述说出了ipip的特点。
简单之极!但是你不能通过IP-in-IP隧道转发广播或者IPv6数据包。你只是连接了两个一般情况下无法直接通讯的IPv4网络而已。至于兼容性,这部分代码已经有很长一段历史了,它的兼容性可以上溯到1.3版的内核。据我所知,Linux的IP-in-IP隧道不能与其他操作系统或路由器互相通讯。它很简单,也很有效。需要它的时候尽管使用,否则就使用GRE。
GRE 需要内核模块 ip_gre.ko
GRE是最初由CISCO开发出来的隧道协议,能够做一些IP-in-IP隧道做不到的事情。比如,你可以使用GRE隧道传输多播数据包和IPv6数据包。
还有一个 sit 我也不知道这个该不该算在隧道里面,他的作用是连接 ipv4 与 ipv6 的网络,这里也我也把他当作隧道的一种吧。
以上所有隧道都需要内核模块 tunnel4.ko 的支持。
在内核之外,还有很多实现隧道的方法,最闻名的当然要数PPP和PPTP,但实际上还有很多(有些是专有的,有些是安全的,有些甚至根本不用IP。
很多人都把隧道描写成一个专用的管子,我觉得这容易造成理解上的误区,当然你看到的结果的确像在一个专用的管子里那样通讯,我更喜欢把隧道看成一个装在大信封里面的一个小信封和一封信。因为不管理论如何,你的数据包还是要实实在在的,通过现有的网络、路由,一步一步的传送过去,这个是不可能省略掉的。
说了这么多,现在就开始从最基本的 ipip 来手工建立一个隧道。
环境:两台linux服务器,分别在两地。并且两台机器都有实ip与互联网向链接,能够互相通讯。每台机器后面都有带着一个LAN 。
图1
————————————-INTERNET————————————
| 192.168.100.0/24 | 211.167.237.218 <------> 123.127.177.195 |192.168.200.0/24 |
|- – – – | | – – – -|
| eth0 | eth1 | | eth1 | eth0 |
———————————————————————————
结构就是这个样子,现在我们就依据上面的结构来建立 tunnel 。
在 211.167.237.218 上创建:
modprobe ipip
ip tunnel add tun1 mode ipip remote 123.127.177.195 local 211.167.237.218 ttl 64
ip link set tun1 mtu 1480 up
ip address add 192.168.200.253 brd 255.255.255.255 peer 123.127.177.195 dev tun1
ip route add 192.168.200.0/24 via 192.168.200.253
在 123.127.177.195 上创建:
modprobe ipip
ip tunnel add tun1 mode ipip remote 211.167.237.218 local 123.127.177.195 ttl 64
ip link set tun1 mtu 1480 up
ip address add 192.168.100.253 brd 255.255.255.255 peer 211.167.237.218 dev tun1
ip route add 192.168.100.0/24 via 192.168.100.253
上面的命令里出现了几个关键字,需要我们注意的地方:
1、mtu隧道会增加协议开销,因为它需要一个额外的IP包头。一般应该是每个包增加20个字节,所以如果一个网络的MTU是1500字节的话,使用隧道技术后,实际的IP包长度最长只能有1480字节了。这倒不是什么原则性的问题,但如果你想使用隧道技术构建一个比较大规模的网络的话,最好仔细研究一下关于IP包的分片和汇聚的知识。
2、ttl 数据包的生存期。设置为64是安全的。如果你的网络规模巨大就提高这个值。不要因为好玩而这么做,那样会产生有害的路由环路。实际上,在很多情况下你要考虑能否减小这个值。
3、ip 要写对端的内网ip,因为这可以减少vpn服务器不是默认网关的麻烦。对方看到的数据包实际是你本地绑定在 tun1 上的ip地址。
4、设置路由后就可以通讯了。
5、这样你已经可以和 你拨入的机器的内网卡通讯了,为了让你拨入方的其他机器也可以和你通讯,你需要增加一个 arp 的响应机制及打开ip转发功能。
arp -Ds source_ip -i lan_eth pub
sysctl -w net.ipv4.ip_forward=1
让你的内网卡可以响应这个ip的arp回应。
到此为止,一简单的 ip tunnel 已经完成了。当然如果你不想使用 ipip 你更喜欢gre 那你可以在开头简单的改成
moprobe ip_gre
ip tunnel add tun1 mode gre … …
来实现,而后面的参数基本上不需要改变。
上面是一个简单的没有任何加密的隧道建立过程,这样通讯可能会带来安全隐患,毕竟我们访问的是内网吗。
要搞隧道加密就搞ipsec吧,没玩过,ipsec 是一个复杂的东西.
先介绍配置 ipip 隧道
在 /etc/sysconfig/network-scripts 下建立 ifcfg-tunl1 文件
内容如下:
DEVICE=tunl1
TYPE=IPIP
PEER_OUTER_IPADDR=219.216.98.110
MY_INNER_IPADDR=10.0.1.1/24
而配置 gre 隧道就是建立一个 ifcfg-gre1 文件
内容如下:
DEVICE=gre1
TYPE=GRE
PEER_OUTER_IPADDR=219.216.98.110
MY_INNER_IPADDR=10.0.0.1/24
然后使用 ifup tunl1|gre1 则可以了。
转
Submitted by admin on 2011, July 10, 10:11 AM
在linux上用TUN/TAP构建6to4隧道
http://www.lostriver.net/linux-userspace-6to4-tun/
Submitted by admin on 2011, July 10, 9:28 AM
就以公司的环境来测试:
局域网网段为192.168.0.0/24 公司linux网关服务址器地绑定两块网卡 内网为192.168.0.3(作为局域网的网关)公网IP地址为:111.111.111.111 机房内网网段为10.10.0.0/16 一台服务器绑有两块网卡 内网地址为:10.10.254.253 公网地址为:222.222.222.222
net192 为公司内部网络 net10 为机房内部网络
公司网关服务器:
1 modprobe ipip (开启模块)
modprobe ip_gre
ip tunnel add net10 mode gre remote 222.222.222.222 local 111.111.111.111 ttl 255 (ttl 255 有些文档上没有)
新增了一个 tunnel 设备﹐称之为 net10 让它使用 GRE 协议(mode gre)﹐其远程地址为222.222.222.222 (于另一端的 router)﹐这样我们的 tunneling 封包将从111.111.111.111从出(您的 router 在网络 C 上可以具有好几个 IP 地址﹐并由您决定用哪一个(222.222.222.222)来做 tunneling)﹐而且﹐封包的 TTL 字段被设定为 255 (ttl 255)。
2 ip link set net10 up 我们将这个设备启动起来。
3 ip addr add 192.168.0.3 dev ne10 新增的界面 netb 设定一个地址为192.168.0.3。用这个在小网络上也未尝不可﹐只是当您踏上采金旅程之际﹐您或需用其它 IP 范围来给 tunneling 界面就是了(例如在此范例中﹐您可以使用 10.0.1.0)。
4 ip route add 10.10.0.0/24 dev net10 添加一条去往10.10.0.0的路由
5 ifconfig net10 192.168.0.3 pointopoint 10.10.254.253 配置p-t-P网卡参数 (公司配置的是ifconfig net10 192.168.0.3 pointopoint 192.168.0.3)不过应该没有什么关系
机房222.222.222.222 服务器设置如下
ip tunnel add net192 mode gre remote 111.111.111.111 local 222.222.222.222 ttl 255
ip link set net192 up
ip addr add 10.10.254.253 dev net192
ip route add 192.168.0.0/24 dev net192
ifconfig net10 10.10.254.253 pointopoint 192.168.0.3
假如您要拿掉公司网关机器上的 tunnel﹐则﹕
ip link set net10 down
ip tunnel del net10
如果要系统启动自动加载,把上述所有命令写成一个文件 然后在/etc/rc.d/rc.local里添加下列内容
/bin/wenjian 保存就可以了。
#!/bin/sh
modprobe ipip
ip tunnel add net10 mode ipip remote 118.144.82.160 local 124.207.47.150 ttl 255
ip link set net10 up
ip addr add 192.168.0.3 dev net10
ip route add 10.10.0.0/16 dev net10
Submitted by admin on 2011, July 10, 9:27 AM
前期准备:
试验环境 Red Hat Enterprise Linux 4 U2
软件版本 ipvsadm-1.24.tar.gz
编译安装注意
#pwd
/usr/src
#ln -s kernels/2.6.9-22.EL.i686 linux 如果没有目录则安装RPEM包kernel-devel-2.6.9-22.EL
#rpmbuild -tb ipvsadm-1.24.tar.gz
#rpm -ivh /usr/src/redhat/RPEM/i386/ipvsadm-1.24-6.i386.rpm
正常使用时提示:
[root@lvs boot]# ipvsadm
IP Virtual Server version 1.2.0 (size=65536)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
一、NAT方式
Load Balance:192.168.1.1
Virtual IP: 10.0.0.1
RealServer1: 192.168.1.2
RealServer2: 192.168.1.3
nameserver: 192.168.1.1
gateway: 192.168.1.1 (使用正确地址,或者使用本机地址,否则会出现刷新ipvsadm rule时很慢)
1.开启路由机制
#echo 1 > /proc/sys/net/ipv4/ip_forward
注意:
永久修改要修改sysctl.conf
2.加载nat模块
#modprobe iptable_nat
注意:
用lsmod检查,另如果不加载此模块,也可以在第一次访问时成功,但是会在再次访问时出现延迟过长,或访问超时现象。
3.加载rule
#ipvsadm -A -t 10.0.0.1:80 -s rr
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.2:80 -m
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.3:80 -m
rr 轮询方式
-m 设置为NAT方式
4.保存rule
#ipvsadm --save > /etc/sysconfig/ipvsadm
5.邦定vip
#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255
6.RealServer设置
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.1
nameserver: 192.168.1.1
开启HTTP服务,确认自己能够访问。
RealServer2:
ip: 192.168.1.3
gateway: 192.168.1.1
nameserver: 192.168.1.1
开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。
7.测试
选择一台主机,ip设置10.0.0.2 ,访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。
二、Direct Routing方式
Load Balance:192.168.1.1
Virtual IP: 10.0.0.1
RealServer1: 192.168.1.2
RealServer2: 192.168.1.3
nameserver: 192.168.1.254
gateway: 192.168.1.254
1.开启路由机制
#echo 1 > /proc/sys/net/ipv4/ip_forward
注意:
永久修改要修改sysctl.conf
2.加载rule
#ipvsadm -A -t 10.0.0.1:80 -s rr
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.2:80 -g
#ipvsadm -a -t 10.0.0.1:80 -r 192.168.1.3:80 -g
rr 轮询方式
-g 设置为DR方式
3.保存rule
#ipvsadm --save > /etc/sysconfig/ipvsadm
4.邦定vip
#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255
4.RealServer设置
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.254
nameserver: 192.168.1.254
#ifconfig lo:1 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore 注释:这四句目的是为了关闭ARP广播响应
#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。
RealServer2:
ip: 192.168.1.3
gateway: 192.168.1.254
nameserver: 192.168.1.254
#ifconfig lo:1 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。
5.测试
在网关作测试即可,其中一块ip设置10.0.0.2 ,另一块设置192.168.1.254。访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。
三、IP Tunnel方式
vpn server:
eth0:10.0.0.3 (测试时使用的OPENVPN)
gateway server:
eth0:10.0.0.2
eth1:192.168.1.254
gatewat server2:
eth0:10.0.0.4
eth1:172.0.0.254
LVS Director Servers:
Load Balance:192.168.1.1
Virtual IP: 10.0.0.1
nameserver: 192.168.1.254
gateway: 192.168.1.254
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.254
nameserver: 192.168.1.254
tun0: 20.0.0.1 (这个是连接到vpn后有服务器分配到的)
RealServer2:
ip: 172.0.0.1
gateway: 172.0.0.254
nameserver: 172.0.0.254
tun0: 20.0.0.2 (这个是连接到vpn后有服务器分配到的)
1.开启路由机制
#echo 1 > /proc/sys/net/ipv4/ip_forward
注意:
永久修改要修改sysctl.conf
2.加载rule
#ipvsadm -A -t 10.0.0.1:80 -s rr
#ipvsadm -a -t 10.0.0.1:80 -r 20.0.0.1:80 -i (RS1的地址指定,也可以选择本地地址192.168.1.2)
#ipvsadm -a -t 10.0.0.1:80 -r 20.0.0.2:80 -i
rr 轮询方式
-i 设置为IP Tunnel方式
3.保存rule
#ipvsadm --save > /etc/sysconfig/ipvsadm
4.邦定vip
#ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0 borcast 10.0.0.255
4.RealServer设置
RealServer1:
ip: 192.168.1.2
gateway: 192.168.1.254
nameserver: 192.168.1.254
tun0: 20.0.0.1
#ifconfig tunl0 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore 注释:这四句目的是为了关闭ARP广播响应
#echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。
RealServer2:
RealServer2:
ip: 172.0.0.1
gateway: 172.0.0.254
nameserver: 172.0.0.254
tun0: 20.0.0.2
#ifconfig tunl0 10.0.0.1 netmask 255.255.255.255 borcast 10.0.0.1
#echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
开启HTTP服务,确认自己能够访问。页面与realserver1不同就可以。
5.测试
在网关作测试即可,访问http://10.0.0.1,反复刷新网页,每次出现的网页不同则表示成功。
对于windows服务器配置
dr方式,先安装ms loopback adapter
添加新硬件--〉添加网络适配器--〉microsoft-->loopback adapter
只需要在windows的的服务器上,添加加一个microsoft loopback网卡(虚拟网卡),IP地址就是lvs的VIP,然后,进入注册表,把loopback网卡的掩码改为255.255.255.255,重启loopback网卡便可。
转
Submitted by admin on 2011, July 10, 9:08 AM
端口转发映射的程序叫rinetd,启动方法rinetd -c /etc/rinetd.conf 。
把1.1.1.1的11端口映射到2.2.2.2的3389端口,配置文件如下
[root@localhost iso]# cat /etc/rinetd.conf
1.1.1.1 11 2.2.2.1 3389
1.1.1.1 12 2.2.2.2 3389
1.1.1.1 13 2.2.2.3 22
1.1.1.1 14 2.2.2.4 80
allow *.*.*.*
logfile /var/log/rinetd.log
http://www.boutell.com/rinetd/
Submitted by admin on 2011, July 9, 10:05 PM
tcpshow - decode a tcpdump savefile
tcpshow [ -b ] [ -sb ] [ -w width ] [ -nolink ] [ -noip ]
tcpshow reads a tcpdump(1) savefile and provides a reasonably complete decode of Ethernet, IP, ICMP, UDP and TCP headers, in packets that match the boolean expression. The data belonging to these packets is displayed in ASCII.
Currently, protocol data is not decoded. This is not considered a serious problem for applications that use ASCII data streams.
Also, IP and TCP options are not decoded.
The input file must be in the format produced by tcpdump -enx. This file can be generated from
1. a prior run of tcpdump -w file
2. a live run of tcpdump (without -w)
3. any other program that produces a correctly formatted
trace
See under EXAMPLES for each of these different methods, plus a description of the format the input file needs to be in.
Except when -cooked is used, tcpdump(1) is required to be on your PATH, to process the raw savefile.
The following options can be used in just about any sane combination.
break long lines so they don't wrap
show line breaks
don't decode the IP header
display only the data
track TCP sequence numbers
show the header decode in compact format
point-to-point link
also display a hex dump of spurious data at packet-end
display a help summary
In the following examples, where tcpdump(1) is used, the flag -s 1518 is used to be sure of saving the complete Ethernet frame.
Also, where tcpdump(1) expressions are used, these could equally have been given to tcpdump(1) directly, if it was known at this time what data you're interested in.
Capture a raw savefile and decode it later.
tcpshow reads from standard input and writes to standard output.
tcpdump(1), nit(4P), bpf(4)