应用层、网络层、链路层常用命令及常见端口

Posted by r3kind1e on August 14, 2021

Checking the Routing Table(网络层)

路由表不仅仅由路由器维护;每个主机存储它自己的表。

为了检查它们长什么样,可以用如下命令:

ip route or route on Linux

在 Linux 上添加路由的最简单方法是使用“ip route add”命令,后跟要到达的网络地址和要用于此路由的网关。

ip route add <network_ip>/<cidr> via <gateway_ip>

例如:ip route add 192.168.222.0/24 via 10.175.34.1

默认情况下,如果您不指定任何网络设备,则将选择您的第一个网卡,排除您的本地环回。

但是,如果您想拥有特定设备,则可以将其添加到命令的末尾。

ip route add <network_ip>/<cidr> via <gateway_ip> dev <network_card_name>

例如:ip route add 192.168.222.0/24 via 10.175.34.1 dev tap0

参考:How To Add Route on Linuxip route add network command for Linux explained

route print on Windows

netstat -r on OSX

Well-known Ports

您不需要知道所有的服务端口分配,但您至少应该记住最常见的,例如:

  • SMTP(25)
  • SSH(22)
  • POP3(110)
  • IMAP(143)
  • HTTP(80)
  • HTTPS(443)
  • NETBIOS(137, 138, 139)
  • SFTP(115)
  • Telnet(23)
  • FTP(21)
  • RDP(3389)
  • MySQL(3306)
  • MS SQL Server(1433)

Netstat Command(网络层)

为了检查一个主机上正在监听的端口和当前的(TCP)连接,可以使用如下命令:

netstat -ano on Windows

netstat -tunp on Linux

netstat -p tcp -p udp together with lsof -n -i4TCP -i4UDP on MacOS

使用这些命令来显示有关在机器上侦听的进程和连接到远程服务器的进程的信息。

Mac Address(链路层)

为了发现在你的电脑上安装的网卡的MAC地址,你可以使用:

ipconfig /all on Windows

ifconfig on *nix operating systems, like MacOS

ip addr on Linux

Checking the ARP Cache(链路层)

你可以检查你主机的ARP缓存通过如下命令:

arp -a on Windows

arp on *nix operating systems

ip neighbour on Linux

Reverse DNS Resolution(应用层)

域名系统也可以反向操作,将IP地址解析为DNS名字。记住,这并不常见,只有域名管理员启用并配置这个域名特性它才能工作。

许多工具使用反向 DNS(如果可用)。 Linux ping 实用程序在收到来自目标的每个响应后执行反向 DNS 查询。

1
2
3
4
ping www.yahoo.com
PING fd-fp3.wg1.b.yahoo.com (46.228.47.115) 56(84) bytes of data.
64 bytes from ir1.fp.vip.ir2.yahoo.com (46.228.47.115): icmp_req=1 ttl=49 time=125 ms
...