1. 程式人生 > >nmap 埠掃描/arp/ping,獲取ssh伺服器的ip地址

nmap 埠掃描/arp/ping,獲取ssh伺服器的ip地址

nmap可以用來掃描埠,也可以用來發現主機:

如果在區域網中你只知道某個裝置的mac地址,需要找到對應的ip地址,可以通過 arp 或者 nmap 掃描來實現。

arp -na         //顯示 ARP cache(儲存mac地址和ip的mapping),必須同一個網段,如果用虛擬機器橋接則不行(快取的,如果某個ip沒有出現,先ping一下就再檢視可以了).
// 如果 arp cache 中不包含你的ip地址,可以 ping 一下廣播地址,eg: ping -b 192.168.1.255  關於ping廣播地址(已經廢棄),見下文分析。也可以用nmap -sn 來 ping 所有地址(good), 然後再檢視arp caceh.
sudo nmap -sn 192.168.1.* // 相當於 ping 所有的地址,不掃描埠。 // 如果要查詢埠,可以man nmap,檢視 Host Discovery 部分,-PS/PA/PU 選項。 sudo nmap -PS 192.168.1.11 // tcp單次握手連線掃描,獲取埠開放資訊,mac地址等,需要root許可權。同 Port Scanning Techniques 部分的 -sS 選項。 // 檢視 mac 地址,先 ping 一下,然後再 arp -n: [email protected]-pc:~$ ping -c 1 192.168.1.103 >
/dev/null [email protected]-pc:~$ arp -n 192.168.1.103 Address HWtype HWaddress Flags Mask Iface 192.168.1.103 ether 08:00:46:d4:1d:82 C eth0

關於 ping 廣播地址(已經不適用了):

255.255.255.255 is a broadcast address, you are sending a ping to every device on your local network and you will get a reply from every device. The ping command is only showing the first reply it gets, in your case your own PC (127.0.0.1 is loopback) was the quickest. If you use a packet sniffer (like Wireshark) you will be able to see all replies.

Some devices will reply to a normal ping but will not reply to a ping sent to a broadcast address. This is to prevent an exploit called a Smurf attack.

255.255.255.255 will also broadcast to every device on the internet. For obvious reason this is blocked, the message will not leave your local network.
But, every modern operating system trends to ignores broadcasts pings as a security measure to avoid broadcast storms.(所以ping廣播地址不實用)

注意:不同的引數對掃描時間和掃描結果有影響,可以嘗試不同的引數組合(sudo nmap -PS -p22 –open 10.10.40.1/24),不過記得加上sudo,不然由於nmap不能傳送raw package而可能探測不到主機。一般探測都要指定掃描某些特定埠(ssh 22,http 80等),不然會很費時間。

注意,nmap不要求目標機器在同一個網段,但是這樣就不能得到目標主機的mac地址,例如虛擬機器NAT模式掃描。如果在同一個網段(或者橋接模式),則能夠得到更多資訊(mac地址,vendor名稱等等)

幾個常用命令(執行nmap - -help):

// ICMP echo scanning,就是 ping 所有的ip地址。
sudo nmap -sn 192.168.1.*       // Ping scan, diable port scan,快速找到主機。
// TCP SYN scan(tcp三次握手中,握手一次就馬上斷開),-p 指定埠,--open只顯示開啟的埠;快速找允許tcp連線的並且開啟22埠的主機,ssh登陸用。注:TCP SYN 掃描需要root許可權。
sudo nmap -sS -p22 --open 192.168.1.*

// 如果要測試tcp三次握手成功,使用 -sT,且不需要root許可權。
nmap -sT -p22 --open 192.168.1.*

nmap各個引數的功能:

HOST DISCOVERY 部分:
-sn : 就是ping scan,不掃描埠,快速。
-PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP or SCTP discovery to given ports。

SCAN TECHNIQUES 部分:
-sS : TCP SYN scan(又稱半開放,或隱身掃描,即tcp握手一次馬上斷開)
-sT : TCP connect scan(完成tcp的三次握手)192.168.1.* 或者  192.168.1.1/24
-p 22 : specifies the port to scan, ssh 埠預設為22
--open : suppress output for clients that are not listening
-F : Fast mode - Scan fewer ports than the default scan
-sV : Probe open ports to determine service/version info
-sP : Check which hosts are live and up in Network, with this option nmap skips port detection and other things, its fast.

關於各種nmap掃描型別:

  • ICMP Echo (TCP/IP Ping)
  • ARP Request
  • TCP SYN Ping
  • TCP ACK Ping
  • UDP Ping
  • Combination

相關推薦

nmap 掃描/arp/ping獲取ssh伺服器ip地址

nmap可以用來掃描埠,也可以用來發現主機: 如果在區域網中你只知道某個裝置的mac地址,需要找到對應的ip地址,可以通過 arp 或者 nmap 掃描來實現。 arp -na //顯示 ARP cache(儲存mac地址和ip的mapp

獲取當前伺服器ip地址

獲取當前伺服器ip地址,或獲取指定主機名的ip地址 public static String getServer(){ try { //獲取本地ip地址 InetAddress address = InetAddress

nmap 掃描檢視是否可訪問是否對外開放

NMap,也就是Network Mapper,最早是Linux下的網路掃描和嗅探工具包。 1 安裝 apt-get install nmap 2 使用,檢視ip下所有對外的埠 $ sudo nmap -sS ip Starting Nmap 7.01 ( https://nmap.org ) at

cetnos中nmap掃描工具的使用

1:安裝: yum -y install nmap 2:使用方法: nmap -p 1-65535 1.1.1.1 #掃描1.1.1.1此IP地址的所有埠 nmap -p 80,443 1.1.1.1 #掃描1.1.1.1此IP地址的指定埠 3:更多使用方法:

使用NMAP掃描程式碼實現

   Nmap是一個網路連線端掃描軟體,用來掃描網上電腦開放的網路連線端。確定哪些服務執行在哪些連線端,並且推斷計算機執行哪個作業系統(這是亦稱 fingerprinting)。其基本功能有三個,一是探測一組主機是否線上;其次是掃描 主機埠,嗅探所提供的網路服務;還可以推斷主機所用的作業系

python 獲取本機IP地址檢測是否被佔用

import socket def get_host_ip(): """ get host ip address 獲取本機IP地址 :return: """ s = socket.socket(socket.

python+nmap+掃描

import sys, nmap scan_row = [] input_data = raw_input('Input hosts and port:') scan_row = input_dat

獲取請求主機IP地址,如果通過代理進來則透過防火墻獲取真實IP地址

cas return ++ strip dex except servlet desc 請求 /** * 獲取請求主機IP地址,如果通過代理進來,則透過防火墻獲取真實IP地址; * @Title: getIpAddress * @Descr

PHP獲取客戶端IP地址服務器IP地址

客戶端 get sse spa gets static p地址 tip sta ============================================獲取客戶端IP==============================================

Ubuntu 開啟ssh 連接設置靜態 ip 地址

OS ini htm stop 連接 IT openssh 沒有 配置 工作需要進行遠程計算機連接,這裏采用ssh連接方式,系統為 Ubuntu 16.04 。僅記備忘。 安裝ssh ubuntu16.04默認沒有安裝ssh,需要安裝: 1、sudo apt-get ins

getifaddrs()和struct ifaddrs的使用獲取本機IP

      ifaddrs結構體定義如下: C程式碼   struct ifaddrs    {       

載入我的圖片獲取你的後臺地址ip等資訊

是否有時候存在以下情況: 1.感覺目標站點存在XSS,但是XSS平臺就是收不到貨 2.找到後臺密碼卻尋不著後臺入口 3.想檢視發帖人的IP地址。 那麼可以嘗試VK這招。(受蝦米表哥的思路啟發) 不用開啟連結,只要打開了含有我的圖片的網頁就會中招。 0x01 正文 先看看效果 1.

Linux 獲取Centos7的IP地址 JDK + Tomcat +Mysql 安裝

   一.獲取Centos的IP地址       1.輸入 ip addr 檢視Centos ip地址 2.如果出現上圖結果,還需要修改配置 輸入圖下命令     回車後顯示下圖結果 將ONBOOT=no 改為 ONBOOT = yes 按Es

accept獲取對端IP地址getsockname獲取本端IP地址

getpeername函式用於獲取與某個套接字關聯的外地地址,accept函式在接收連線的時候也會獲取對端的地址。getsockname用於獲取本端的地址。看程式碼。 服務端: #include <unistd.h> #include <sys/

rails中使用grape做api生產環境用nginx做代理獲取真實的ip

Grape官方網站上給出如下的程式碼,但我用了nginx代理,接收到的都是127.0.0.1class API < Grape::API helpers do def logger API.logger end end post '/statuses' do logger.info "#{c

android 根據網路來獲取外網ip地址及國家地區的介面

新浪的IP地址查詢介面:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js 新浪多地域測試方法:http://int.dpool.sina.com.cn/iplookup/iplookup.php?form

java IP地址工具類java IP地址獲取java獲取客戶端IP地址

java IP地址工具類,java IP地址獲取,java獲取客戶端IP地址   ================================ ©Copyright 蕃薯耀 2019年1月11日 http://fanshuyao.iteye.com/   impo

Xshell連線虛擬機器時提示SSH伺服器拒絕了密碼

首先,開啟ssh服務,執行以下命令:/etc/init.d/ssh start    或 service sshd start 然後ifconfig檢視其ip地址,當Xshell連線虛擬機器時,提

Socket獲取客戶端IP地址

  Socket類包含一些非常有用的屬性,這些屬性允許確定關於正在連線的客戶端的資訊。其中關鍵資訊之一是返回EndPoint物件的RemoteEndPoint屬性。EndPoint類本身是抽象的,要想收集有用的資訊,需·要把EndPoint強制型別轉換為IPEndPoint物

網路基礎之ARP地址解析協議(為什麼IP地址和MAC地址都要有又是如何通過IP地址解析到MAC地址的)

ARP協議      Address Resolution Protocol      地址解析協議  在區域網中,網路中實際傳輸的是“幀”,幀裡面是有目標主機的MAC地址的。在乙太網中,一個主機要和另一個主機進行直接通訊,必須要知道目標主機的MAC地址。但這個目標MAC地址