iT邦幫忙

0

Windows Route table command 使用網址而非位址

  • 分享至 

  • xImage

這張圖應該可說明:

有沒有辦法不用 IP Address 而改用 DNS Name?

CalvinKuo iT邦大師 7 級 ‧ 2015-01-09 13:13:12 檢舉
沒有辦法。
請朝用放火牆阻擋所有Client的DNS對外查詢,強迫使用者DNS指向內部架設的DNS,再用CNAME或A Record,把你要阻擋的主機擋掉... (我是習慣用CNAME改成公司入口網站)
還是你喜歡一台一台改Hosts檔案....
依據路由協定,路由表可以用DOMAIN NAME才是不正確的!
理論上來說,沒有一種Route Table是有DOMAIN NAME的吧...
還是我才識疏淺...有這種東西???
外獅佬 iT邦大師 1 級 ‧ 2015-01-09 13:40:11 檢舉
路由表結合DNS?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
6
Ray
iT邦大神 1 級 ‧ 2015-01-09 14:49:45

IP Routing 是 OSI Layer 3 (Network) 在處理的事情, DNS Name 則是 OSI Layer 7 (Application) 才能處理的, 你把 Layer 7 的東西, 硬塞給 Layer 3 去吃, 叫他怎麼吞得下去?....

Ray iT邦大神 1 級 ‧ 2015-01-09 14:50:37 檢舉

補一張圖來看:

0
cmwang
iT邦大師 1 級 ‧ 2015-01-09 17:26:43

某些設firewall/routing rule的工具在遇到user輸入FQDN時會解成IP代入,但是遇到單一FQDN有多個A record時就糗了----到底是要以哪一個A record為準,還是要自動為每筆A record加一筆rule啊OrzOrz....

0
Ivan7757
iT邦見習生 ‧ 2022-10-05 18:20:20

寫的batch就可以

@echo off
set "InputDomain=%1"
set "InputRouter=%2"
set "targetIP=pingerror"
if "%1" == "" goto :usage
if "%2" == "" goto :usage
for /f "tokens=2 delims=[]" %%F in ('ping -4 -n 1 %InputDomain%') do set "targetIP=%%F"
if %targetIP% == pingerror goto :end
echo Found "%1" IP : %targetIP%
echo route add %targetIP% mask 255.255.255.255 %2
@echo on & route add %targetIP% mask 255.255.255.255 %2
@goto :eof
:end
echo [%1] IP not found! & echo.
:usage
echo Usage  : %0 DomainName YourRouter
echo Example: %0 google.com 192.168.0.1

我要發表回答

立即登入回答