��������ϸ����Ƥ��ʤ�����٥����ȤΥܥȥ�ͥå�
���礦�ɣ�ǯ���ˡ�����٥����ȤΥܥȥ�ͥå��򸫤Ĥ���ˤ��פȤ���������Ǻܤ��Ƥ��ޤ��������μ�Υȥ�֥륷�塼�ƥ��󥰤äƷ빽���Ѥ�Ǻ�ޤ����Ǥ���͡��Ϥ���ޤ��ơ��������@pandax381�Ǥ���
��������ϸ����Ƥ��ʤ����
�֥����Ȥα������٤��פȤ������꤬ȯ��������硢���θ����Ϥɤ��ˤ���Ǥ��礦����
- Web���ץꥱ�������ν����˻��֤��ݤ��äƤ���
- DB�����Ф��ꤲ�������꡼�α������٤�
- �����Фν���ǽ�Ϥ�Ķ���Ƥ���
�ʤɤʤɡ������Ĥ�β�ǽ��������ޤ����̾��˵󤲤Ƥ���褦������ϡ����ץꥱ�������䥵���ФΥ�����Ĵ�����뤳�Ȥǡ��������ͤ��ߤ�뤳�Ȥ��Ǥ��ޤ���
�����ǡ��������ä�������Ĵ�������Ǥϡ����θ����ˤ��ɤ��夯���Ȥ��Ǥ��ʤ��ä��ꡢ�����ʶ�ϫ��ȼ���������⤢��ޤ���
���륵���ȤΤ������ν����
�Ĥ������Τ��ȤǤ�����KLab�α��Ĥ��Ƥ���˿��������륲����ˤơ������Ȥ��Ť��ʤ�Ȥ������꤬ȯ�����ޤ���������Ū�ˤ�HTTP�Υ����ॢ���Ȥ���ȯ���Ƥ��ơ����饤����Ȥ˥��顼���֤���Ƥ��ޤäƤ���Ȥ�����ΤǤ�
DSAS�Ǥϡ�HTTP�����Ф��ե����¦�ȥХå������¦��2�ʹ����ˤʤäƤ��ơ��Хå������¦��HTTP�����Ф�5�ð���˱������֤��ʤ���硢�ե����¦��HTTP�����Ф����顼���֤����ȤߤˤʤäƤ��ޤ������Τ��ᡢ���Υ������ǿ�����˵�����Τϡ��Хå������¦��HTTP�����ФȤ����ɳ�Ť�DB�����Ф�memcached�����ФǤ���
�ƥ����ФΥ꥽�������֤��󤷤Ƥ���꥽������˥��򸫤Ƥߤ�ȡ��Τ��˥Хå������¦��HTTP�����ФΥ쥹�ݥ󥹥����ब�����˰������Ƥ��뤳�Ȥ��狼��ޤ����������ʤ�Ȳ������Τ�DB�����ФǤ���������������ˤ�ä�DB�����Ф�����پ��֤ˤʤꡢ�쥹�ݥ󥹤˻��֤��ݤ��äƤ����ǽ��������ޤ���
�Ȥ�������DB�����ФΥ꥽�������ǧ���Ƥ���٤��ݤ��äƤ���褦���ͻҤϤʤ����쥹�ݥ󥹥�����ˤ����ꤢ��ޤ���Ǥ�����Ʊ�ͤ�memcached�����Ф��ǧ�����Ȥ������������꥽��������Ψ�ʤɤ�����Ϥ���ޤ���Ǥ�����
�����ǵ����ϥ��ץꥱ�������쥤�䤫��ͥåȥ���쥤��ؤ��Ѥ�뤳�Ȥˤʤ�ޤ�������
��®�ѥ��åȥ���ץ���ʻȤ��ġ���� tcpdump �ǤϤʤ���������� miruo �Ǥ����ˤ��Ƥߤ�ȡ��Ф��Ф��Хå������¦��HTTP�����Ф���TCP��SYN�������Ⱥ��������̤�ȯ�����Ƥ��ޤ�����
SYN�������Ȥκ�����ȯ�����Ƥ���Ȥ������Ȥϡ�TCP����³�˻��֤��ݤ��äƤ���Ȥ������Ȥˤʤ�ޤ���SYN�������Ȥκ����ϡ��̾� 3�á�6�á�12�á������Ȥ����ֳ֤ǹԤ��뤿�ᡢ1���ܤκ����򤷤Ƥ��餹����SYN/ACK���������Ф褤�ΤǤ����������Ǥʤ����5�ä�вᤷ�Ƥ��ޤ����ե����¦��HTTP�����Ф��鶯�����Ǥ���Ƥ��ޤ��ޤ���
�ºݤ˥ͥåȥ����ή���ѥ��åȤ��ǧ���ơ��褦�䤯�����˰����Ť��ޤ����������ơ��ѥ��åȤξ��󤫤��и���memcached�����ФȤ������Ȥ�狼��ޤ�����
��������memcached�����Ф���˳�ǧ��������ʤ��ä��Ϥ���������ǰ�Τ���꥽������˥��Ǥ⤦����memcached�����Фξ������ǧ���Ƥߤ��ΤΡ���Ϥ�����Ϥʤ�������CPU��ۤɤ�ɻȤ��Ƥ��ʤ������ȥ�ե��å���100Mbps���٤Ǥޤ��ޤ�;͵������ޤ���
�äȡ�������̯�ʰ��´������ȥ�ե��å��Υ���դ������100Mbps��ĥ���դ��Ƥ���ΤǤ������ʤߤˡ��ƥ����Ф�NIC������1000BASE-T�Τ�Τ��Ȥ��Ƥ��ޤ����ޤ����Ȼפ���memcached�����Ф�NIC����³�������ǧ����ȥ�󥯤�100M�ˤʤäƤ��롦���ʤ����Ȥ����פ��������ʤ��鹹��Ĵ����ʤ᤿��̡����������θ�����Ƚ�����ޤ�����
memcached�����Ф���³���Ƥ��륹���å����ξ㤷�ơ����Υݡ��Ȥ�100M�ǥ�󥯤���Ƥ��ޤäƤ����ΤǤ���
��ɡ�����Υ����å����н褷�Ƥ�������ϲ�ä���ޤ��������ͥåȥ�����ߤ�����ϸ����ˤ��ɤ��夯�ޤǤ˼�֤��ݤ��ä����ѤǤ���
��ä��ڤ�ʬ���μ�֤򸺤餷����
�åµï¿½Î¤è¤¦ï¿½Ê¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ç¤Ï¡ï¿½ï¿½Í¥Ã¥È¥ï¡¼ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Î¾ï¿½ï¿½ó¡¢¤ï¿½ï¿½ï¿½ï¿½TCP�쥤��Ǻ�����ȯ�����Ƥ��뤫�ɤ����ξ�����ᤤ�ʳ������Ƥ���С����ޤǤ�ƻ�Τ�Ϥ��ä��ưפ��ä��Ȼפ��ޤ���
�ºݤˤϤ��ξ�������Ǥϰ�̣�������ʤ����Ȥ⤢��Ǥ��礦��������¾�ξ���䵯���Ƥ��븽�ݤȾȤ餷��碌�ơ�������ڤ�ʬ���丶�����¬����ˤ��礤����Ω�ĤϤ��Ǥ���
�Ȥ����櫓�Ǻ��ޤ�����
���֤���Ĺ���ʤ�ޤ�������TCP�쥤���ȯ�����������򸡽Ф���ץ���������ޤ�����
����TCP���å�����˥���tcpeek��
tcpeek�ʤƤ��������ԡ����ˤϡ�TCP�Υ��å�����Ω��3way�ϥ�ɥ��������˻���ȯ�����륨�顼��ƻ롦���פ���ͥåȥ����˥��Ǥ���libpcap���Ѥ����ѥ��åȥ���ץ��㷿�Υץ������ǡ�tcpdump�ʤɤ�Ʊ�ͤ˴ƻ뤷�����ۥ��Ⱦ�ǵ�ư����������Ǵ�ñ�˻Ȥ��ޤ���
�Ȥ�������°��README�򸫤Ƥ������������ʤߤˡ�tcpeek��Ȥ��Ȥ���ʤ��Ȥ��Ǥ��ޤ���
- ���顼���С�RST��ICMP�α����������³�˼��Ԥ����꥿���ॢ���Ȥ���TCP���å����򽸷פǤ��ޤ�
- �������С�SYN�����SYN/ACK�������Ȥκ�����ȯ������TCP���å����򽸷פǤ��ޤ�
- �ե��륿���̿�������IP���ɥ쥹���ݡ����ֹ���ȹ�碌��ʣ���Υե��륿������Ǥ����ե��륿��˸��̽��פǤ��ޤ�
- �ǡ������ϡ����פ����ǡ�����UNIX�ɥᥤ�󥽥��åȷ�ͳ�ǽ��Ϥ��ޤ���������ץȤǰ����䤹��JSON�����ǽ��Ϥ��ޤ�
- gmetric��ͳ��rrd����Ϥ��뤿��Υ�����ץȡ�tcpeekstat�ˤ���°���Ƥ��ޤ�
- �ץ��ߥ����㥹�⡼�ɤǤ�Ȥ��ޤ�
- �ʤɤʤ�
tcpeek��¹Ԥ���ȡ�ɸ�२�顼��TCP���å����ξ��󤬥ꥢ�륿����ǽ��Ϥ���ޤ���
$ sudo ./tcpeek -i eth0 listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes TIME(s) | TIMESTAMP | SRC IP:PORT DST IP:PORT | RESULTS | DUP SYN DUP S/A ---------------------------------------------------------------------------------------------------------------------- 0.002 | 12-07-06 16:39:02.552 | 192.168.2.227:48967 192.168.2.202:80 | success | 0 0 0.002 | 12-07-06 16:39:02.559 | 192.168.2.227:48968 192.168.2.202:80 | success | 0 0 0.002 | 12-07-06 16:39:11.219 | 192.168.2.227:42031 192.168.2.202:443 | success | 0 0 0.002 | 12-07-06 16:39:11.273 | 192.168.2.227:48970 192.168.2.202:80 | success | 0 0 0.002 | 12-07-06 16:39:11.279 | 192.168.2.227:42033 192.168.2.202:443 | success | 0 0 0.002 | 12-07-06 16:39:11.309 | 192.168.2.227:48972 192.168.2.202:80 | success | 0 0 0.002 | 12-07-06 16:39:11.323 | 192.168.2.227:42035 192.168.2.202:443 | success | 0 0 0.001 | 12-07-06 16:39:11.354 | 192.168.2.227:42036 192.168.2.202:443 | success | 0 0 0.002 | 12-07-06 16:39:11.385 | 192.168.2.227:42037 192.168.2.202:443 | success | 0 0 0.001 | 12-07-06 16:39:36.254 | 192.168.2.228:62876 192.168.2.227:80 | failure (reject) | 0 0 0.000 | 12-07-06 16:39:38.160 | 192.168.2.228:62877 192.168.2.227:80 | failure (reject) | 0 0 0.000 | 12-07-06 16:39:44.689 | 192.168.2.227:56371 192.168.2.228:8080 | failure (reject) | 0 0 39.947 | 12-07-06 16:41:29.723 | 192.168.2.227:58376 192.168.2.207:8080 | failure (timeout) | 2 0
���� | ���� |
---|---|
TIME(s) | TCP���å����γ�Ω��3way�ϥ�ɥ��������ˤ˳ݤ��ä����֡��á� |
TIMESTAMP | TCP���å���󤬳��Ϥ��줿���� |
SRC IP:PORT | TCP���å����λ�ü�ʥ��饤����ȡˤ�IP���ɥ쥹�ȥݡ����ֹ� |
DST IP:PORT | TCP���å����ν�ü�ʥ����Сˤ�IP���ɥ쥹�ȥݡ����ֹ� |
RESULTS | TCP���å����γ�Ω���� |
DUP SYN | SYN�������Ȥ��������줿����ʺ�����ȯ�����Ƥ��ʤ���� 0�� |
DUP S/A | SYN/ACK�������Ȥ��������줿����ʺ�����ȯ�����Ƥ��ʤ���� 0�� |
���Ϥ���rrd�򸵤˺�����������դΥ��᡼���Ǥ�
���ޤ�
�¤ϡ���ǽ񤤤Ƥ���ȥ�֥뤬�������������TCP�κ������ΤǤ���ȡ����������ȥ�֥뵯�����Ȥ����᤯���Ť��Ƥ�����͡פȤ����ä��ФƤ��ޤ�����tcpeek�⤽�κ�������Ф��Ƥ��ơ��ܴۤ������Ƥ����ΤǤ������ޤ����ǡ����ִĶ��Ǥ�ư�����Ƥ��ʤ��ä��ΤǤ��������Ƥ��Τ褦�ʥȥ�֥뤬�ºݤ˵����tcpeek��ư�����Ƥ���Ф����ˤ狼�ä��Τˡ��פȤ������Ȥˤʤꡢ�᡹�����ִĶ������������ή��Ȥʤꤽ���Ǥ���
�ȥ�å��Хå�URL
���ε����ؤΥ�����
�ݡ��Ⱦ㳲�˵��դ��ʤ��Τϡ����ʤ��Ф��Ǥ��衣
������󡢤���Ϥ����̤�Ǥ���͡�
����Υ������Ǥϡ������Фˤ⥹���å��ˤ�����ϻĤäƤ��ơ����顼�ȥ᡼�������Ǥ��ƤϤ�����Ǥ����������˸���Ȥ��Ƥ���˥��ץ�¦�ǥ��顼��¿ȯ���ƥ����ե����Ƥ��ޤä��Ȥ����Τ����ηаޤ��ä��ꤷ�ޤ���������󡢥��顼�Ȥ���Ȥ��Ƥ��ޤä����Ȼ���ȿ�ʤ��٤��ʤΤǤ���������Ȥ��̤ˡ�TCP�ξ��֤򥰥�ղ����Ƥ������Ȥǡ������С��ͥåȥ�������԰ʳ��Ǥ�����θ����˵��Ť����Ȥ��Ǥ��ơ������������˷Ҥ��뤳�Ȥ���Ԥ��Ƥ��ޤ���