节点覆盖请求IP解析

时间:2016-01-26 23:38:52

标签: node.js http dns request ip

我正在努力寻找准确说出这个问题的正确术语,但我会尽力给它:

在node.js中,有没有办法在发出HTTP请求时手动覆盖IP地址(例如请求some-domain.com/whatever,而不是通过DNS解析IP地址,手动提供一些IP地址{{1} })?

实际上,这相当于在1.2.3.4

中设置1.2.3.4 some-domain.com

3 个答案:

答案 0 :(得分:5)

有一个很小的模块就是这样做的:evil-dns

evilDns.add('foo.com', '1.2.3.4');

答案 1 :(得分:3)

我建议在DNS API(https://nodejs.org/api/dns.html)上查看Nodejs的文档。您可以修改操作系统主机文件,并使用dns.lookup()从主机文件中提取,而不是执行DNS查询。

不确定您是否在尝试避免修改主机文件?

答案 2 :(得分:1)

节点的http和https模块将“代理”作为参数,您可以使用lookup parameter覆盖dns解析器。

Imports System
Imports Twilio
Imports Twilio.Types
Imports Twilio.Rest.Studio.V1.Flow

Module Program
    Sub Main(args As String())
    
        Console.WriteLine("Trigger a flow with VisualBasic.NET")
        
        Const accountSid = "AC..."
        Const authToken = "4f..."

        TwilioClient.Init(accountSid, authToken)

        Dim execution = ExecutionResource.Create(
            to := New PhoneNumber("+17781234567"),
            from := New PhoneNumber("+17787654321"), 
            pathFlowSid:= "FW..."
        )

        Console.WriteLine(execution.Sid)    
            
    End Sub
End Module