> php教程 > PHP开发 > 본문

Linux netstat 명령의 자세한 설명 및 사용 예(다양한 네트워크 관련 정보 표시)

高洛峰
풀어 주다: 2016-12-15 09:21:50
원래의
1889명이 탐색했습니다.

때때로 컴퓨터가 잘못된 데이터나 오작동을 일으키는 데이터그램을 수신하더라도 놀라지 마십시오. TCP/IP는 이러한 유형의 오류를 허용하고 자동으로 데이터그램을 다시 보낼 수 있습니다. 그러나 오류 조건의 누적 수가 수신된 IP 데이터그램의 큰 부분을 차지하거나 그 수가 급격히 증가하는 경우 netstat를 사용하여 이러한 조건이 발생하는 이유를 알아내야 합니다.

1. 명령 형식:

netstat [-acCeFghilMnNoprstuvVwx][-A<네트워크 유형>][--ip]

2. 명령 기능:

netstat는 IP, TCP, UDP 및 ICMP 프로토콜과 관련된 통계 데이터를 표시하는 데 사용됩니다. 일반적으로 머신의 각 포트의 네트워크 연결을 확인하는 데 사용됩니다.

3. 명령 매개변수:

-a 또는 –all은 연결된 모든 소켓을 표시합니다.

-A 또는 –은 이 네트워크 유형의 연결에 있는 관련 주소를 나열합니다.

-c 또는 –continuous는 네트워크 상태를 연속적으로 나열합니다.

-C 또는 –cache는 라우터 구성의 캐시 정보를 표시합니다.

-e 또는 –extend는 네트워크에 대한 기타 관련 정보를 표시합니다.

-F 또는 –fib는 FIB를 표시합니다.

-g 또는 –groups는 멀티캐스트 기능 그룹의 구성원 목록을 표시합니다.

-h 또는 –help 온라인 도움말입니다.

-i 또는 –interfaces는 네트워크 인터페이스 정보 형식을 표시합니다.

-l 또는 –listening은 모니터링되는 서버의 소켓을 표시합니다.

-M 또는 –masquerade는 가장된 네트워크 연결을 표시합니다.

-n 또는 –numeric은 도메인 네임 서버를 거치지 않고 IP 주소를 직접 사용합니다.

-N 또는 –netlink 또는 –symbolic은 네트워크 하드웨어 주변 장치의 심볼릭 링크 이름을 표시합니다.

-o 또는 –timers는 타이머를 표시합니다.

-p 또는 –programs는 소켓을 사용하고 있는 프로그램 식별 코드와 프로그램 이름을 표시합니다.

-r 또는 –route는 라우팅 테이블을 표시합니다.

-s 또는 –statistice는 네트워크 작업 정보 통계 테이블을 표시합니다.

-t 또는 –tcp는 TCP 전송 프로토콜의 연결 상태를 표시합니다.

-u 또는 –udp는 UDP 전송 프로토콜의 연결 상태를 표시합니다.

-v 또는 –verbose는 명령 실행 프로세스를 표시합니다.

-V 또는 –version은 버전 정보를 표시합니다.

-w 또는 –raw는 RAW 전송 프로토콜의 연결 상태를 표시합니다.

-x 또는 –unix 이 매개변수의 효과는 "-A unix" 매개변수를 지정하는 것과 동일합니다.

–ip 또는 –inet 이 매개변수의 효과는 "-A inet" 매개변수를 지정하는 것과 동일합니다.

4. 사용 예:

예 1: 매개변수 없이

명령 사용: netstat

출력:

[root@localhost ~]# netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State 
tcp 0 268 192.168.120.204:ssh 10.2.0.68:62420 ESTABLISHED 
udp 0 0 192.168.120.204:4371 10.58.119.119:domain ESTABLISHED 
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ] DGRAM 1491 @/org/kernel/udev/udevd
unix 4 [ ] DGRAM 7337 /dev/log
unix 2 [ ] DGRAM 708823 
unix 2 [ ] DGRAM 7539 
unix 3 [ ] STREAM CONNECTED 7287 
unix 3 [ ] STREAM CONNECTED 7286 
[root@localhost ~]#
로그인 후 복사

설명:

From 전반적으로 netstat의 출력 결과는 두 부분으로 나눌 수 있습니다.

하나는 활성 TCP 연결이라고 하는 활성 인터넷 연결입니다. 여기서 "Recv-Q" 및 "Send-Q"는 수신 대기열과 송신 대기열을 나타냅니다. . 이 숫자는 일반적으로 0이어야 합니다. 그렇지 않으면 패키지가 대기열에 쌓이고 있다는 의미입니다. 이 상황은 매우 드문 경우에만 볼 수 있습니다.

다른 하나는 액티브 유닉스 도메인 소켓이라고 불리는 액티브 유닉스 도메인 소켓입니다(네트워크 소켓과 동일하지만 로컬 통신에만 사용할 수 있으며 성능을 두 배로 높일 수 있습니다).

Proto는 연결에 사용된 프로토콜을 표시하고, RefCnt는 이 소켓에 연결된 프로세스 번호를 나타내며, Types는 소켓 유형을 표시하고, State는 소켓의 현재 상태를 표시하며, Path는 다른 프로세스의 사용을 나타냅니다. 소켓에 연결됩니다.

소켓 유형:

-t: TCP

-u: UDP

-raw: RAW 유형

--unix: UNIX 도메인 유형

--ax25 : AX25 유형

--ipx : ipx 유형

--netrom : netrom 유형

상태 설명:

LISTEN: 원격 TCP 포트에서 연결 요청을 수신합니다.

SYN-SENT: 연결 요청을 보낸 후 일치하는 연결 요청을 기다립니다. (이러한 상태 패킷이 많은 경우 )

SYN-RECEIVED : 연결 요청을 받고 보낸 후 상대방의 연결 요청 확인을 기다립니다. (이 상태가 많을 경우 침수될 것으로 추정됩니다.)

ESTABLISHED: 대표 개방형 연결

FIN-WAIT-1: 원격 TCP의 연결 중단 요청을 기다리는 중 또는 이전 연결 중단 요청 승인

FIN -WAIT-2: 원격 TCP의 연결 중단 요청을 기다리는 중

CLOSE-WAIT: 로컬 사용자의 연결 중단 요청을 기다리는 중

CLOSING: 원격 TCP의 연결 중단 확인을 기다리는 중 연결 중단

LAST-ACK: 원래 요청을 기다리는 중 원격 TCP에 대한 연결 중단 요청 확인(좋지 않음, 이 항목이 나타나면 공격을 받는지 확인)

TIME-WAIT: 원격 TCP가 연결 중단 요청 확인을 수신할 수 있을 만큼 충분한 시간을 기다립니다.

CLOSED: 연결 상태 없음

예 2: 모두 나열 ports

명령: netstat -a

출력:

[root@localhost ~]# netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State 
tcp 0 0 localhost:smux *:* LISTEN 
tcp 0 0 *:svn *:* LISTEN 
tcp 0 0 *:ssh *:* LISTEN 
tcp 0 284 192.168.120.204:ssh 10.2.0.68:62420 ESTABLISHED 
udp 0 0 localhost:syslog *:* 
udp 0 0 *:snmp *:* 
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 708833 /tmp/ssh-yKnDB15725/agent.15725
unix 2 [ ACC ] STREAM LISTENING 7296 /var/run/audispd_events
unix 2 [ ] DGRAM 1491 @/org/kernel/udev/udevd
unix 4 [ ] DGRAM 7337 /dev/log
unix 2 [ ] DGRAM 708823 
unix 2 [ ] DGRAM 7539 
unix 3 [ ] STREAM CONNECTED 7287 
unix 3 [ ] STREAM CONNECTED 7286 
[root@localhost ~]#
로그인 후 복사

설명:

설정된 연결을 포함하여 유효한 모든 연결 정보 목록을 표시합니다( ESTABLISHED) 및 연결을 수신하는 연결(LISTENING)입니다.

예 3: 현재 UDP 연결 상태 표시

명령: netstat -nu

출력:

[root@andy ~]# netstat -nu
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State 
udp 0 0 ::ffff:192.168.12:53392 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:56723 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:56480 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:58154 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:44227 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:36954 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:53984 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:57703 ::ffff:192.168.9.120:10000 ESTABLISHED 
udp 0 0 ::ffff:192.168.12:53613 ::ffff:192.168.9.120:10000 ESTABLISHED 
[root@andy ~]#
로그인 후 복사

예 4: UDP 포트 표시 number 사용법

명령: netstat -apu

출력:

[root@andy ~]# netstat -apu
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
udp 0 0 *:57604 *:* 28094/java 
udp 0 0 *:40583 *:* 21220/java 
udp 0 0 *:45451 *:* 14583/java 
udp 0 0 ::ffff:192.168.12:53392 ::ffff:192.168.9.120:ndmp ESTABLISHED 19327/java 
udp 0 0 *:52370 *:* 15841/java 
udp 0 0 ::ffff:192.168.12:56723 ::ffff:192.168.9.120:ndmp ESTABLISHED 15841/java 
udp 0 0 *:44182 *:* 31757/java 
udp 0 0 *:48155 *:* 5476/java 
udp 0 0 *:59808 *:* 17333/java 
udp 0 0 ::ffff:192.168.12:56480 ::ffff:192.168.9.120:ndmp ESTABLISHED 28094/java 
udp 0 0 ::ffff:192.168.12:58154 ::ffff:192.168.9.120:ndmp ESTABLISHED 15429/java 
udp 0 0 *:36780 *:* 10091/java 
udp 0 0 *:36795 *:* 24594/java 
udp 0 0 *:41922 *:* 20506/java 
udp 0 0 ::ffff:192.168.12:44227 ::ffff:192.168.9.120:ndmp ESTABLISHED 17333/java 
udp 0 0 *:34258 *:* 8866/java 
udp 0 0 *:55508 *:* 11667/java 
udp 0 0 *:36055 *:* 12425/java 
udp 0 0 ::ffff:192.168.12:36954 ::ffff:192.168.9.120:ndmp ESTABLISHED 16532/java 
udp 0 0 ::ffff:192.168.12:53984 ::ffff:192.168.9.120:ndmp ESTABLISHED 20506/java 
udp 0 0 ::ffff:192.168.12:57703 ::ffff:192.168.9.120:ndmp ESTABLISHED 31757/java 
udp 0 0 ::ffff:192.168.12:53613 ::ffff:192.168.9.120:ndmp ESTABLISHED 3199/java 
udp 0 0 *:56309 *:* 15429/java 
udp 0 0 *:54007 *:* 16532/java 
udp 0 0 *:39544 *:* 3199/java 
udp 0 0 *:43900 *:* 19327/java 
[root@andy ~]#
로그인 후 복사

예 5: 네트워크 카드 목록 표시

명령: netstat -i

출력:

[root@andy ~]# netstat -i
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 151818887 0 0 0 198928403 0 0 0 BMRU
lo 16436 0 107235 0 0 0 107235 0 0 0 LRU
[root@andy ~]#
로그인 후 복사

예 6: 멀티캐스트 그룹 관계 표시

命令:netstat -g

输出:

[root@andy ~]# netstat -g
IPv6/IPv4 Group Memberships
Interface RefCnt Group
--------------- ------ ---------------------
lo 1 all-systems.mcast.net
eth0 1 all-systems.mcast.net
lo 1 ff02::1
eth0 1 ff02::1:ffff:9b0c
eth0 1 ff02::1
[root@andy ~]#
로그인 후 복사

实例7:显示网络统计信息

命令:netstat -s

输出:

[root@localhost ~]# netstat -s
Ip:
530999 total packets received
0 forwarded
0 incoming packets discarded
530999 incoming packets delivered
8258 requests sent out
1 dropped because of missing route
Icmp:
90 ICMP messages received
0 input ICMP message failed.
ICMP input histogram:
destination unreachable: 17
echo requests: 1
echo replies: 72
106 ICMP messages sent
0 ICMP messages failed
ICMP output histogram:
destination unreachable: 8
echo request: 97
echo replies: 1
IcmpMsg:
InType0: 72
InType3: 17
InType8: 1
OutType0: 1
OutType3: 8
OutType8: 97
Tcp:
8 active connections openings
15 passive connection openings
8 failed connection attempts
3 connection resets received
1 connections established
3132 segments received
2617 segments send out
53 segments retransmited
0 bad segments received.
252 resets sent
Udp:
0 packets received
0 packets to unknown port received.
0 packet receive errors
5482 packets sent
TcpExt:
1 invalid SYN cookies received
1 TCP sockets finished time wait in fast timer
57 delayed acks sent
Quick ack mode was activated 50 times
60 packets directly queued to recvmsg prequeue.
68 packets directly received from backlog
4399 packets directly received from prequeue
520 packets header predicted
51 packets header predicted and directly queued to user
1194 acknowledgments not containing data received
21 predicted acknowledgments
0 TCP data loss events
1 timeouts after reno fast retransmit
9 retransmits in slow start
42 other TCP timeouts
3 connections aborted due to timeout
IpExt:
InBcastPkts: 527777
로그인 후 복사

说明:

按照各个协议分别显示其统计数据。如果我们的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么我们就可以用本选项来查看一下所显示的信息。我们需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。

实例8:显示监听的套接口

命令:netstat -l

输出:

[root@localhost ~]# netstat -l
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State 
tcp 0 0 localhost:smux *:* LISTEN 
tcp 0 0 *:svn *:* LISTEN 
tcp 0 0 *:ssh *:* LISTEN 
udp 0 0 localhost:syslog *:* 
udp 0 0 *:snmp *:* 
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 708833 /tmp/ssh-yKnDB15725/agent.15725
unix 2 [ ACC ] STREAM LISTENING 7296 /var/run/audispd_events
[root@localhost ~]#
로그인 후 복사

实例9:显示所有已建立的有效连接

命令:netstat -n

输出:

[root@localhost ~]# netstat -n
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State 
tcp 0 268 192.168.120.204:22 10.2.0.68:62420 ESTABLISHED 
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ] DGRAM 1491 @/org/kernel/udev/udevd
unix 4 [ ] DGRAM 7337 /dev/log
unix 2 [ ] DGRAM 708823 
unix 2 [ ] DGRAM 7539 
unix 3 [ ] STREAM CONNECTED 7287 
unix 3 [ ] STREAM CONNECTED 7286 
[root@localhost ~]#
로그인 후 복사

实例10:显示关于以太网的统计数据

命令:netstat -e

输出:

[root@localhost ~]# netstat -e
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode 
tcp 0 248 192.168.120.204:ssh 10.2.0.68:62420 ESTABLISHED root 708795 
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ] DGRAM 1491 @/org/kernel/udev/udevd
unix 4 [ ] DGRAM 7337 /dev/log
unix 2 [ ] DGRAM 708823 
unix 2 [ ] DGRAM 7539 
unix 3 [ ] STREAM CONNECTED 7287 
unix 3 [ ] STREAM CONNECTED 7286 
[root@localhost ~]#
로그인 후 복사

说明:

用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)

实例11:显示关于路由表的信息

命令:netstat -r

输出:

[root@localhost ~]# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.120.0 * 255.255.255.0 U 0 0 0 eth0
192.168.0.0 192.168.120.1 255.255.0.0 UG 0 0 0 eth0
10.0.0.0 192.168.120.1 255.0.0.0 UG 0 0 0 eth0
default 192.168.120.240 0.0.0.0 UG 0 0 0 eth0
[root@localhost ~]#
로그인 후 복사

实例12:列出所有 tcp 端口

命令:netstat -at

输出:

[root@localhost ~]# netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State 
tcp 0 0 localhost:smux *:* LISTEN 
tcp 0 0 *:svn *:* LISTEN 
tcp 0 0 *:ssh *:* LISTEN 
tcp 0 284 192.168.120.204:ssh 10.2.0.68:62420 ESTABLISHED 
[root@localhost ~]#
로그인 후 복사

实例13:统计机器中网络连接各个状态个数

命令:netstat -a | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

输出:

[root@localhost ~]# netstat -a | awk &#39;/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}&#39;
ESTABLISHED 1
LISTEN 3
[root@localhost ~]#
로그인 후 복사

实例14:把状态全都取出来后使用uniq -c统计后再进行排序

命令:netstat -nat |awk '{print $6}'|sort|uniq -c

输出:

[root@andy ~]# netstat -nat |awk &#39;{print $6}&#39;|sort|uniq -c
14 CLOSE_WAIT
1 established)
578 ESTABLISHED
1 Foreign
43 LISTEN
5 TIME_WAIT
[root@andy ~]# netstat -nat |awk &#39;{print $6}&#39;|sort|uniq -c|sort -rn
576 ESTABLISHED
43 LISTEN
14 CLOSE_WAIT
5 TIME_WAIT
1 Foreign
1 established)
[root@andy ~]#
로그인 후 복사

实例15:查看连接某服务端口最多的的IP地址

命令:netstat -nat | grep "192.168.120.20:16067" |awk '{print $5}'|awk -F: '{print $4}'|sort|uniq -c|sort -nr|head -20

输出:

[root@andy ~]# netstat -nat | grep "192.168.120.20:16067" |awk &#39;{print $5}&#39;|awk -F: &#39;{print $4}&#39;|sort|uniq -c|sort -nr|head -20
8 10.2.1.68
7 192.168.119.13
6 192.168.119.201
6 192.168.119.20
6 192.168.119.10
4 10.2.1.199
3 10.2.1.207
2 192.168.120.20
2 192.168.120.15
2 192.168.119.197
2 192.168.119.11
2 10.2.1.206
2 10.2.1.203
2 10.2.1.189
2 10.2.1.173
1 192.168.120.18
1 192.168.119.19
1 10.2.2.227
1 10.2.2.138
1 10.2.1.208
[root@andy ~]#
로그인 후 복사

实例16:找出程序运行的端口

命令:netstat -ap | grep ssh

输出:

[root@andy ~]# netstat -ap | grep ssh
tcp 0 0 *:ssh *:* LISTEN 2570/sshd 
tcp 0 0 ::ffff:192.168.120.206:ssh ::ffff:10.2.1.205:54508 ESTABLISHED 13883/14 
tcp 0 0 ::ffff:192.168.120.206:ssh ::ffff:10.2.0.68:62886 ESTABLISHED 20900/6 
tcp 0 0 ::ffff:192.168.120.206:ssh ::ffff:10.2.2.131:52730 ESTABLISHED 20285/sshd: root@no 
unix 2 [ ACC ] STREAM LISTENING 194494461 20900/6 /tmp/ssh-cXIJj20900/agent.20900
unix 3 [ ] STREAM CONNECTED 194307443 20285/sshd: root@no 
unix 3 [ ] STREAM CONNECTED 194307441 20285/sshd: root@no 
[root@andy ~]#
로그인 후 복사

实例17:在 netstat 输出中显示 PID 和进程名称

命令:netstat -pt

输出:

[root@localhost ~]# netstat -pt
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
tcp 0 248 192.168.120.204:ssh 10.2.0.68:62420 ESTABLISHED 15725/0 
[root@localhost ~]#
로그인 후 복사

说明:

netstat -p 可以与其它开关一起使用,就可以添加 “PID/进程名称” 到 netstat 输出中,这样 debugging 的时候可以很方便的发现特定端口运行的程序。

实例18:找出运行在指定端口的进程

命令:netstat -anpt | grep ':16064'

输出:

[root@andy ~]# netstat -anpt | grep &#39;:16064&#39;
tcp 0 0 :::16064 :::* LISTEN 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.201:6462 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.20:26341 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.20:32208 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.20:32207 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:51303 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:51302 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50020 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50019 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:56155 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50681 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50680 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:52136 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:56989 ESTABLISHED 24594/java 
tcp 0 0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:56988 ESTABLISHED 24594/java 
[root@andy ~]#
로그인 후 복사

说明:

运行在端口16064的进程id为24596,再通过ps命令就可以找到具体的应用程序了。


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿