Hi there,
I’m trying to run a very simple DNS server. The code is pretty simple.
Based on some research, I’ve tome to the following:
INTERFACES = [
[:udp, "fly-global-services", 53],
[:tcp, "0.0.0.0", 53],
]
To server tcp and udp on, respectively, 0.0.0.0
and fly-global-services
.
The following is in my toml.fly
app = "appname"
[experimental]
cmd = "bundle exec ruby main.rb RUBYOPT=-w"
[build]
builder = "heroku/buildpacks:20"
[[services]]
internal_port = 53
protocol = "tcp"
[[services.ports]]
port = "53"
[[services]]
internal_port = 53
protocol = "udp"
[[services.ports]]
port = "53"
When I deploy, I run into the following problem:
{:kind=>"Errno::EACCES",
:message=>"Permission denied - bind(2) for 0.0.0.0:53",
And
{:kind=>"Errno::EACCES",
:message=>"Permission denied - bind(2) for 172.19.6.219:53",