怎样确定远程计算机ip地址,如何获取远程计算机的IP地址
每周總有那么七天不想去辦公室or實驗室,不過沒關系,通過windows自帶的遠程桌面連接功能我們可以實現遠程的辦(yu)公(le),只需要在家or在宿舍有一臺能上網的性能一般的電腦遠程連接即可。可是遠程電腦所獲取的ip可能不是靜態ip或者斷電之后ip發生了改變或者你根本懶得記錄ip,那么如何在你想要連接該電腦的時候獲取其ip?當然你可以讓你的同學或者同事幫忙查看一下,但是有沒有不需要麻煩其他人就可以獲取ip的方法?請看下文。
作者的網絡環境:ipv4/ipv6雙棧,其中ipv4有計費系統需登陸,ipv6無需登錄。
方法一:查詢網絡的網管界面
由于ipv4存在計費系統,那么如果你在離開辦公室/實驗室的時候沒有關機且登錄了網絡的計費系統,那么在你的管理界面就會有已經登錄的電腦的ip地址。如下圖:
下面兩種方法討論在一般情況下,沒有網管界面或者未登錄網管系統的情況下,如何獲取遠程電腦的ip。
方法二:利用現有軟件的服務——以pt服務為例
經常玩pt(private torrent)的朋友對這個方法肯定不陌生,在pt網站的個人信息的界面會有正在做種的電腦的ip的記錄,我們利用這個記錄中的ipv6/ipv4地址(教育網pt記錄的多數是ipv6的地址,公網的多數記錄的是ipv4的地址)來登錄遠程桌面連接,注意pt網站上記錄的地址多數是包括ip地址和端口號,要把端口號去掉。
這個方法就是利用utorrent軟件(其他的pt網站允許的客戶端都可以),設置它開機自啟(當然至少有一個種子在做種),
這樣,只要這臺遠程電腦開機之后就會自動做種,pt網站的個人信息的界面就會記錄這個ip,我們也就可以在任意的地方獲取這個遠程電腦的ip地址。
如圖,紅框中的就是遠程電腦的ip。
方法三:自己編程實現——以python程序為例
人生苦短,我用python。python是解釋性的腳本語言,學起來很容易。這里我利用python調用郵箱的SMTP服務發送郵件,自動的獲取本機的ip地址并通過郵件發送出去。并設置開機自啟,開機時自動通過批處理程序,啟動該python程序,從而獲取ip并發送郵件。下面我將給出.py源代碼,需要注意以下幾個步驟,
步驟1:遠程電腦上應該成功安裝python并且安裝了與發送郵件相關的包(參考下面py代碼的頭部就知道了),python版本應該是3.x的版本。
步驟2:對于郵箱,應該設置郵箱開啟SMTP服務,對于qq郵箱,如下圖,
對于outlook郵箱,如下圖,
在本文作者的網絡環境下,ipv4需要登錄,ipv6不需登陸,而考慮到開機的時候ipv4可能是未登錄的狀態,而qq郵箱是沒法在純ipv6的環境下使用的,因此我采用ipv6下可以發送郵件的outlook郵箱。另外通過SMTP登錄outlook郵箱時,與qq郵箱不同之處在于需要握手,反映在代碼中,與qq郵箱不同之處在于多了如下兩行代碼:
server.ehlo()
server.starttls()
另外qq郵箱登錄時需要以授權碼代替實際登陸郵箱時的qq密碼,outlook的密碼就是登錄郵箱時的密碼。
我的.py的代碼如下(注意我這里用的是outlook的郵箱,而不是qq郵箱,只不過我的outlook的郵箱地址是qq郵箱):
#下面四行導入依賴的包
import smtplib
import socket
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
# 獲取本機計算機名稱
hostname = socket.gethostname()
# 獲取本機ip
ip = socket.gethostbyname(hostname)
#設置服務器所需信息
#outlook郵箱SMTP服務器地址
mail_host = 'smtp.office365.com'
#outlook郵箱用戶名
mail_user = 'XXX@qq.com'
#密碼(部分郵箱如qq郵箱為授權碼)
mail_pass = 'hahaha'
#郵件發送方郵箱地址
sender = 'XXX@qq.com'
#郵件接受方郵箱地址,注意需要[]包裹,這意味著你可以寫多個郵件地址群發
receivers = ['YYY@gmail.com']
#設置email信息
#郵件內容設置
message = MIMEText('正文說點啥好呢','plain','utf-8')
#郵件主題
message['Subject'] = ip
#發送方信息
message['From'] = sender
#接受方信息
message['To'] = receivers[0]
#登錄并發送郵件
server = smtplib.SMTP(mail_host,587)
server.set_debuglevel(1)
server.ehlo()
server.starttls()
server.login(mail_user,mail_pass)
server.sendmail(sender,receivers,message.as_string())
server.quit()
exit()
上述代碼中加粗部分需要根據你的實際進行修改。
步驟3:設置該python程序開機自啟,即在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp目錄下加入一個批處理文件,方法是用記事本寫下如下代碼:python 1.py(我命名上面的py程序為1.py,按照實際的文件名來處理),保存之后將該.txt改成.bat即變成了批處理文件。然后把你的.py文件拷貝到C:\Windows\System32下即可。
需要注意遠程的電腦設置好這些之后不要反復的開機折騰,要不郵箱可能被視為發送垃圾郵件而被暫時鎖定。
一切都設置好之后收到的郵件效果如下:
學以致用是不是很開心:)
如果有問題的話在CMD中調試一下,肯定能找到存在的問題:)
就是醬紫:)
我能想到的就是這么多方式,如果有其他獲取遠程電腦ip的方式歡迎在下面留言。
總結
以上是生活随笔為你收集整理的怎样确定远程计算机ip地址,如何获取远程计算机的IP地址的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IP地址划分
- 下一篇: 惠普服务器如何修改ip地址,HP网络打印