[問題] gethostbyname可以指定interface發出dn …
※ [本文轉錄自 Programming 看板 #1CQDkg8G ]
作者: scarface (花音部飆隼~) 看板: Programming
標題: [問題] gethostbyname可以指定interface發出dns request嗎?~
時間: Mon Aug 16 14:33:12 2010
gethostbyname或是getaddrinfo的問題
我在linux環境下寫網路程式~
我的linux機器有很多interface比方eth0 eth1 eth2... 之類的~
不同的interface他們有可能在同個subnet下也可能不同但基本上有不同的用處~
比方程式a的封包都會往eth0送,程式b就往eth1之類的~
但現在有個問題就是~這些不同interface後面的網路中都有各自的dns server~
比方我的/etc/resolv.conf檔可能有三四個 nameserver 對應不同的interface
但比方我在程式b中使用gethostbyname("a.b.c.d")這樣~
linux機器就會對resolv檔內所有的nameserver發出dns request~
就是說如果我resole黨內有3個nameserver分別對應eth0 eth1 eth2的網域
我每做一次gethostbyname(或 getaddrinfo)3個interface都會發出dns request@_@~
請問要怎麼做才能在發dns request時指定只有某interface發出呢
(以上面的例子來說就是程式b中做dns查詢時只有eth1會發這樣..)
因為我看一下gethostbyname的code~ 主要發封包之類的動作都是kernal在作的~
沒辦法像自己寫socket程式可以用bind到某interface上@_@...~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.240.10.231
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.240.10.231
※ 編輯: scarface 來自: 111.240.10.231 (08/16 14:40)
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章