我可以通过route命令路由IP范围。 但是有没有基于域的路由解决scheme?
路由是一种三层技术,可以将数据包传送到应该去的地方。 三层信息几乎只有源IP,目的IP和分片信息。
额外的信息,如域名超越第三层,更多的是第七层(应用层)。 因此这样的信息并不意味着用于路由。
有一些使用第3层以上信息的特定技术,例如使用第4层信息(TCP / UDP端口)来路由特定数据包的策略路由。 就我所知,这个数字已经很高了。
如果您可以控制该域名,则可以指定特定IP,然后以特定方式由路由器进行路由。 如果你不能做到这一点,恐怕就我所知,这是不可能的。
您在DNS服务器上使用SRV reccord。
例如:
SUBDOMAIN TTL DATA(优先优先)
server1.domain.com:3600:10 10 1337 domain.com
这会将域server1.domain.com上的所有传入通信映射到domain.com上的端口1337
就这么简单。
没有基于域的路由解决scheme。 但是,您可以使用此解决方法脚本。 它获取您的域的IP,并添加一个路由。 您可以将其添加到任务计划程序,以在Windows启动时或以任何特定的时间间隔运行,并将继续添加路由。 它不使用-p选项,所以添加的路由不是永久的。
:: Get IP of Domain name setlocal EnableDelayedExpansion set myServer=your.server.com for /f "tokens=1,2 delims=[]" %%a IN ('ping -n 1 !myServer!') DO ( if "%%b" NEQ "" set myServerIP=%%b ) echo ip is %myServerIP% route add %myServerIP% mask 255.255.255.255 <gateway ip> EXIT
希望这可以帮助!
你可以使用Apache或任何其他的Web服务器。 虚拟域或反向代理就是这样做的。
您可以使用主机logging或DNS将域与IP地址相关联。 使用你现有的路线方法。