尝试访问VPN中的Postgres数据,而无需将本地计算机IP添加到Postgres Server

时间:2018-01-17 11:11:05

标签: python postgresql vpn

我有一个使用pandas-python的项目使用SQLAlchemy createngine函数从Postgres访问数据。当我传递凭证和hostname:portname时,它会抛出错误并要求我将机器IP添加到Postgres服务器上的pg_conf.hba文件中。这将是繁琐的,因为我没有为我的机器提供静态IP,甚至这个项目需要与其他人共享,并且继续使用*继续添加新IP或发出请求没有任何意义。 * IP,因为它有敏感数据。

1 个答案:

答案 0 :(得分:0)

有关该主题的其他信息显示实际问题是 客户端在与(数据库)服务器通信时用于发送数据的本地地址:

您的客户端需要使用指定为源地址的本地VPN地址。 这是通过在调用socket.bind(_source address_)之前添加socket.connect(_target address_)来电来实现的。

或者,更方便的是,只需通过设置与服务器连接的socket.create_connection(address[, timeout[, source_address]])调用提供源地址参数。