AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[amazon-elastic-ip](server)

Martin Hope
Karthik Balasubramanian
Asked: 2021-10-14 06:35:57 +0800 CST

如何修改 EC2 实例中的路由表以通过 eth1 发送流量?

  • 0

我有一个 ec2 AmazonLinux2 实例。它在 eth0 上有一个主网卡。我继续并附加了另一个eni(带有关联的公共IP)eth1。我想确保我也可以通过 eth1 发送流量,但不能。

curl --interface eth0 ifconfig.me --> Works, returns the public ip of the instance
curl --interface eth1 ifconfig.me --> Does not work, the call just hangs

这是我的界面

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 02:82:39:f5:b2:61 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.156/23 brd 192.168.1.255 scope global dynamic eth0
       valid_lft 2293sec preferred_lft 2293sec
    inet6 fe80::82:39ff:fef5:b261/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 02:85:86:84:a8:1b brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.8/23 brd 192.168.1.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::85:86ff:fe84:a81b/64 scope link
       valid_lft forever preferred_lft forever

路由表

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
169.254.169.254 0.0.0.0         255.255.255.255 UH    0      0        0 eth0
192.168.0.0     0.0.0.0         255.255.254.0   U     0      0        0 eth0

这是我添加静态路由的步骤

  1. echo 2 mytable >> /etc/iproute2/rt_tables
  2. sudo ip route add default via 192.168.0.1 dev eth1 table mytable
  3. sudo ip rule add from 192.168.0.8 lookup mytable prio 1000
  4. ip route 刷新表缓存

我在这里看到了各种帖子,其中强调了做同样事情的不同方法,但我尝试过它们都是徒劳的。有人可以帮我解决这里发生的事情吗

这些步骤的灵感来自帖子http://www.rjsystems.nl/en/2100-adv-routing.php。

谢谢凯

amazon-ec2 iptables linux-networking iproute2 amazon-elastic-ip
  • 2 个回答
  • 336 Views
Martin Hope
Micah Henning
Asked: 2021-06-10 16:10:57 +0800 CST

无法通过 SSH 连接到 EC2 上 Ubuntu 20.04 中的第二个网络接口

  • 2

我有一个10.0.0.0/16带有 Internet 网关和两个子网10.0.100.0/24且10.0.200.0/24位于同一可用区的 VPC。单个安全组允许tcp/22入站0.0.0.0/0和出站。我还有两个与安全组绑定的网络接口,每个子网中都有一个。每个网络接口都有自己的弹性 IP 地址。每个子网都有一个指向0.0.0.0/0Internet 网关的路由表。

这是我面临的问题:我有一个与两个网络接口配对的 EC2 实例,但只能通过与eth0.

这是配置:

$ uname -a
Linux ip-10-0-100-70 5.4.0-1045-aws #47-Ubuntu SMP Tue Apr 13 07:02:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc fq_codel state UP group default qlen 1000
    link/ether 02:88:59:6e:78:c0 brd ff:ff:ff:ff:ff:ff
    inet 10.0.100.70/24 brd 10.0.100.255 scope global dynamic eth0
       valid_lft 1806sec preferred_lft 1806sec
    inet6 fe80::88:59ff:fe6e:78c0/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc fq_codel state UP group default qlen 1000
    link/ether 02:7d:b2:d4:b5:ea brd ff:ff:ff:ff:ff:ff
    inet 10.0.200.118/24 brd 10.0.200.255 scope global dynamic eth1
       valid_lft 1807sec preferred_lft 1807sec
    inet6 fe80::7d:b2ff:fed4:b5ea/64 scope link 
       valid_lft forever preferred_lft forever

$ ip route
default via 10.0.100.1 dev eth0 proto dhcp src 10.0.100.70 metric 100 
default via 10.0.200.1 dev eth1 proto dhcp src 10.0.200.118 metric 200 
10.0.200.0/24 dev eth1 proto kernel scope link src 10.0.200.118 
10.0.200.1 dev eth1 proto dhcp scope link src 10.0.200.118 metric 200 
10.0.100.0/24 dev eth0 proto kernel scope link src 10.0.100.70 
10.0.100.1 dev eth0 proto dhcp scope link src 10.0.100.70 metric 100

$ ip rule
0:      from all lookup local
32766:  from all lookup main
32767:  from all lookup default

$ sudo ufw status verbose
Status: inactive

$ ss -nlput
Netid   State     Recv-Q    Send-Q             Local Address:Port       Peer Address:Port   Process   
udp     UNCONN    0         0                  127.0.0.53%lo:53              0.0.0.0:*                
udp     UNCONN    0         0              10.0.200.118%eth1:68              0.0.0.0:*                
udp     UNCONN    0         0               10.0.100.70%eth0:68              0.0.0.0:*                
tcp     LISTEN    0         4096               127.0.0.53%lo:53              0.0.0.0:*                
tcp     LISTEN    0         128                      0.0.0.0:22              0.0.0.0:*                
tcp     LISTEN    0         128                         [::]:22                 [::]:* 

因此,网络接口似乎配置正确,并且 SSH 守护程序正在侦听所有接口。SSH 守护程序运行正常,因为我已经通过 SSH 连接到eth0. 而且这两个接口似乎都可以很好地将流量传递到 Internet:

$ ping -I eth0 -c 5 1.1.1.1
PING 1.1.1.1 (1.1.1.1) from 10.0.100.70 eth0: 56(84) bytes of data.
64 bytes from 1.1.1.1: icmp_seq=1 ttl=38 time=11.5 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=38 time=11.5 ms
64 bytes from 1.1.1.1: icmp_seq=3 ttl=38 time=11.5 ms
64 bytes from 1.1.1.1: icmp_seq=4 ttl=38 time=11.6 ms
64 bytes from 1.1.1.1: icmp_seq=5 ttl=38 time=11.5 ms

--- 1.1.1.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4007ms
rtt min/avg/max/mdev = 11.470/11.515/11.567/0.031 ms

$ ping -I eth1 -c 5 1.1.1.1
PING 1.1.1.1 (1.1.1.1) from 10.0.200.118 eth1: 56(84) bytes of data.
64 bytes from 1.1.1.1: icmp_seq=1 ttl=38 time=11.7 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=38 time=11.8 ms
64 bytes from 1.1.1.1: icmp_seq=3 ttl=38 time=11.7 ms
64 bytes from 1.1.1.1: icmp_seq=4 ttl=38 time=11.8 ms
64 bytes from 1.1.1.1: icmp_seq=5 ttl=38 time=11.8 ms

--- 1.1.1.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4008ms
rtt min/avg/max/mdev = 11.705/11.755/11.829/0.042 ms

但无法连接:

$ ssh -i ~/.ssh/cert.pem ubuntu@3.<redacted>  # EIP for eth0
Welcome to Ubuntu 20.04.2 LTS (GNU/Linux 5.4.0-1045-aws x86_64)
...

$ ssh -i ~/.ssh/cert.pem ubuntu@52.<redacted> # EIP for eth1
ssh: connect to host 52.<redacted> port 22: Operation timed out

我在 AWS 的网络适配器上设置了 Netflow eth1,可以看到流量:

2 840416055907 eni-07cc18b6f1b89378e <redacted> 10.0.200.118 54268 22 6 9 576 1623280724 1623280761 ACCEPT OK

所以我觉得操作系统正在减少流量。但是没有配置防火墙,并且 SSH 守护程序正在侦听所有接口。我还尝试了跟踪日志 /var/log/{syslog,auth.log,kern.log} 和 dmesg,但是当我尝试连接时,它们中的任何一个都没有出现。

我希望我错过了一些简单的事情,因为我现在有点茫然。任何帮助将不胜感激!

amazon-ec2 ssh ubuntu-20.04 amazon-elastic-ip
  • 1 个回答
  • 1615 Views
Martin Hope
galpo
Asked: 2020-12-11 00:07:55 +0800 CST

使用 AWS 弹性 IP 会产生什么延迟?

  • 0

我有一个 EC2 实例,它运行一个连接并监听第三方 WebSocket 服务器的应用程序(据我所知,也部署在 AWS 上,使用 EC2 实例和 Elastic Load Balancing)。我的 EC2 实例还运行一个单独的应用程序,该应用程序连接并向第三方 REST 服务器发送请求(据我所知,也部署在 AWS 上,使用 CloudFront 和 Lambda)。

最小化延迟对我来说至关重要,所以我想知道通过在我的 EC2 实例上使用弹性 IP 而不是公共 IP(我相信这是默认设置)会产生多少额外的延迟。我们在这里处理的是纳秒、微秒还是毫秒?会喜欢熟悉这个的人的意见。谢谢!

amazon-ec2 amazon-web-services amazon-elastic-ip
  • 1 个回答
  • 177 Views
Martin Hope
LordGoats
Asked: 2020-12-09 05:27:05 +0800 CST

AWS 现场实例的公共 IPv4 寻址行为

  • 0

我正在部署一个资源密集型网络爬虫,以优化成本我选择使用 AWS Spot 实例,因为在处理 EC2 实例时知道 IP 地址的默认行为第一个想到的问题是是否可以维护一个固定的 IP AWS 补发广告位时的地址。

能够在没有任何人为干预的情况下做到这一点至关重要(整个事情都连接到多个 gitlab 管道)

amazon-ec2 cloud amazon-web-services amazon-elastic-ip
  • 2 个回答
  • 491 Views
Martin Hope
vvvvv
Asked: 2020-12-03 09:09:48 +0800 CST

是否可以从我的 ec2 实例的当前 IPv4 地址创建弹性 IP 地址?

  • 1

我目前有一个 ec2 "t2.nano" 实例启动并运行。我想切换到“t2.micro”。为此,我需要停止实例。但在此过程中我会丢失我的 IPv4 地址。而且我不希望这样(因为我有几个 ssh 隧道启动并从野外的 rasps 运行,这些隧道当前被硬编码以连接到这个 IPv4 地址)。

我决定创建一个弹性 IP 地址。但我知道,通过创建弹性 IP 地址并将其分配给我当前的 ec2 实例,我也会丢失我当前的 IPv4 地址。

是否可以从我的 ec2 实例的当前 IPv4 地址创建弹性 IP 地址?如果是这样,我该怎么做这个操作?

amazon-ec2 amazon-web-services ipv4 amazon-elastic-ip
  • 1 个回答
  • 346 Views
Martin Hope
Jayreis
Asked: 2020-08-19 19:14:41 +0800 CST

尝试将辅助 ip 添加到 AWS EC2 时找不到设备“eth0”

  • 1

我关注了一个关于创建 ec2 然后向实例添加两个弹性 IP 地址的 youtube 视频。但是,当我 ssh 进入 ubuntu 服务器以添加新的辅助 ip 时,我收到一条错误消息

cannot find device "eth0"

当我运行以下命令时

sudo ip addr add 172.31.32.210/20 dev eth0

请注意,我发布了该 IP,因此它不再是我的 IP 地址,但您可以看到我正在使用的命令。什么会导致此错误以及如何解决?

如果我运行 ip link 命令,我会得到以下信息:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 0e:e4:6d:b4:d6:93 brd ff:ff:ff:ff:ff:ff
amazon-ec2 amazon-elastic-ip
  • 1 个回答
  • 1001 Views
Martin Hope
am fs
Asked: 2020-06-11 02:28:44 +0800 CST

我们可以在 EC2 上的弹性 IP 上应用 SSL,还是应该在之前为实例分配一个域名?

  • 1

我们应该在加载 SSL 证书之前为我们的 EC2 实例分配一个域名,还是我们可以将 SSL 直接应用于我们拥有的弹性 IP 地址?谢谢你

amazon-ec2 ssl amazon-elastic-ip
  • 2 个回答
  • 3098 Views
Martin Hope
Jack Barham
Asked: 2017-02-06 06:33:04 +0800 CST

分配 AWS 弹性 IP(公共)并运行负载平衡 EC2 服务器

  • 0

我即将部署一个应用程序,用户可以在其中将自己的域名添加到他们的个人资料中。我需要给他们一个固定的 IP 地址,以便他们使用弹性 IP 更新他们的 DNS 服务器。

我还想运行负载平衡(和自动缩放)服务器。

阅读起来,您似乎无法将 EIP 分配给负载均衡器,我将如何实现这一点?

load-balancing amazon-ec2 amazon-web-services amazon-elastic-ip
  • 1 个回答
  • 353 Views
Martin Hope
Brett Thomas
Asked: 2017-02-02 09:23:39 +0800 CST

如何在不更改其注册商的 DNS 的情况下将域移动到当前分配给静态弹性 IP 的 AWS ELB

  • 0

我有一个大的域列表(我不控制域注册表,因为它们是客户端)。我想通过 AWS ELB 路由他们的流量并升级他们的基础设施,但是要求他们全部更改其注册商中的 DNS 并不是一个真正的选择。似乎我想将域指向的当前弹性 IP 地址分配给 ELB,但这似乎不是一个选项。有没有办法我可以做到这一点?

domain-name-system amazon-web-services amazon-elb amazon-elastic-ip
  • 1 个回答
  • 38 Views
Martin Hope
Rudiger
Asked: 2016-12-11 05:50:58 +0800 CST

将辅助 IP 添加到 EC2

  • 0

我有两台服务器和两个 EIP,我已经完成了从一个到另一个的迁移,现在希望其中一个 EC2 管理两个 EIP,直到我升级它。

我已按照说明添加它,它显示在控制台中,但是没有使用额外的网络接口netstat -i,当我将 EIP 分配给私有 IP 时,服务器没有响应。

我添加了额外的路由、规则和配置,但是当我尝试重新启动网络服务时,它失败并指出 eth1 似乎不存在。

一旦我将额外的私有 IP 添加到网络接口,它应该显示netstat -i吗?我是否正在为我想要实现的目标做正确的事情?

routing amazon-web-services centos7 amazon-elastic-ip
  • 1 个回答
  • 706 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve