.NET Framework 內建 System.Net.Dns 類別,提供靜態方法 GetHostEntry(舊版為 GetHostByName)輕鬆將網域名稱解析為 IP 位址,無需像傳統 ASP 那樣依賴第三方元件。
<%@ Import Namespace="System.Net" %>
<script language="C#" runat="server">
protected void doClick(Object Src, EventArgs E)
{
try
{
IPHostEntry hostInfo = Dns.GetHostEntry(txtDomain.Text);
showmsg.Text = hostInfo.AddressList[0].ToString();
}
catch (Exception ex)
{
showmsg.Text = "解析失敗:" + ex.Message;
}
}
</script>
<asp:Label runat="server" id="showmsg" />
<form id="testForm" runat="server">
網域名稱:<asp:TextBox runat="server" id="txtDomain" />
<asp:Button runat="server" id="do" Text="查詢" OnClick="doClick" />
</form>
注意: Dns.GetHostByName 已標記過時,建議改用 Dns.GetHostEntry,支援 IPv6 且回傳完整 IPHostEntry 物件。