阿里云數(shù)據(jù)庫SQL Server如何定位IP地址?
發(fā)布時間:2019-06-20 點擊數(shù):1497
場景一
問題描述
用戶的公網(wǎng)IP不固定,使用本地IP查看工具定位到的IP不準確,即使將查詢到的本地IP加入了RDS的白名單中,連接RDS的時候也會報錯。所以,用戶需要查詢到準確的客戶端IP才能訪問RDS。
注意事項
如果您發(fā)現(xiàn)您本地設(shè)備的公網(wǎng)IP地址會變化,而且建立的連接是用于生產(chǎn)環(huán)境,則建議您改為使用內(nèi)網(wǎng)連接,或者在白名單中配置合理的公網(wǎng)IP段,確保不會因為IP地址改變而斷連。
獲取客戶端IP
-
1.將IP地址0.0.0.0/0加入RDS實例的白名單中,操作方法請參見設(shè)置白名單。
說明 將IP地址0.0.0.0/0添加到RDS實例的白名單中,代表允許任何IP訪問RDS實例。
- 2.使用客戶端連接RDS的SQL Server數(shù)據(jù)庫。
-
3.執(zhí)行如下命令,查詢客戶端IP。
SELECT CONNECTIONPROPERTY('PROTOCOL_TYPE') AS PROTOCOL_TYPE, CONNECTIONPROPERTY('CLIENT_NET_ADDRESS') AS CLIENT_NET_ADDRESS
- 4.將步驟 1 在白名單中添加的 0.0.0.0/0 條目刪除,添加上真實的出口IP。
場景二
問題描述
若您想要統(tǒng)計已連接到RDS的SQL Server數(shù)據(jù)庫的所有IP,或定位一些安全問題,如鏈接泄露等,您可以使用獲取已連接到數(shù)據(jù)庫的所有IP的方法。
獲取所有連接到數(shù)據(jù)庫的IP
- 1.將IP地址0.0.0.0/0加入RDS實例的白名單中,操作方法請參見設(shè)置白名單。
- 2.使用客戶端連接RDS的SQL Server數(shù)據(jù)庫。
-
3.執(zhí)行如下命令,查詢所有連接到數(shù)據(jù)庫的IP。
SELECT SP.SPID, SP.LOGINAME, SP.LOGIN_TIME, SP.HOSTNAME, SP.PROGRAM_NAME, DC.CLIENT_TCP_PORT, DC.CLIENT_NET_ADDRESS FROM SYS.SYSPROCESSES AS SP INNER JOIN SYS.DM_EXEC_CONNECTIONS AS DC ON SP.SPID = DC.SESSION_ID WHERE SP.SPID > 50 AND DC.AUTH_SCHEME='SQL'
- 將在步驟1中添加的0.0.0.0/0或您公司的IP段從白名單中刪除。
查看更詳細的連接參數(shù)配置
在查詢到已連接到數(shù)據(jù)庫的所有IP后,若您需要查看單個連接更詳細的參數(shù)配置,請執(zhí)行如下命令: