DPDK usage discussions
 help / color / mirror / Atom feed
* If or how one gets an IP address associated with a vfio-pci bound NIC
@ 2021-11-02 23:14 fwefew 4t4tg
  2021-11-03 18:11 ` David Christensen
  0 siblings, 1 reply; 4+ messages in thread
From: fwefew 4t4tg @ 2021-11-02 23:14 UTC (permalink / raw)
  To: users

[-- Attachment #1: Type: text/plain, Size: 3110 bytes --]

I'm trying to use DPDK on AWS i3.metal instances. I have the code built
with AWS vfio-patches. In order to be logged into the machine on one NIC
while having a free ENA NIC for DPDK, I attached a second NIC.

./dpdk-devbind.py is able to see the second NIC, and bind to it. *All
that's working fine. However, by default this 2nd NIC does not have an IP
address.*

Meanwhile code needs a hostname or IP address of the client and server. How
do I get an IP address associated with this 2nd NIC? And do I need to do
some sys-admin work to ensure traffic in and out of the DPDK bound vfio-pci
NIC is kept separate from the first NIC?

As far as I can see the correct approach is to:

# setup second NIC to have an IP address and make sure UP before
dpdk-devbind:
* sudo ip addr add <some-valid-ipv4-addr> dev ens1 label ens1:1
* sudo ip lin set ens1 u[

before I do DPDK bind.

The NIC, when AWS adds it, starts off down without an IP address by default:

ubuntu$ lspci | grep Ether
04:00.0 Ethernet controller: Amazon.com, Inc. Elastic Network Adapter (ENA)
05:00.0 Ethernet controller: Amazon.com, Inc. Elastic Network Adapter (ENA)
ubuntu$ sudo 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: ens785: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP
group default qlen 1000
    link/ether 0a:0f:1f:db:ca:73 brd ff:ff:ff:ff:ff:ff
    inet 172.31.17.144/20 brd 172.31.31.255 scope global dynamic ens785
       valid_lft 3544sec preferred_lft 3544sec
    inet6 fe80::80f:1fff:fedb:ca73/64 scope link
       valid_lft forever preferred_lft forever


*3: ens1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group
default qlen 1000    link/ether 0a:06:15:14:95:05 brd ff:ff:ff:ff:ff:ff*
Once I bind 'ens1' dpdk-devbind reports it as bound -AND- it no longer
appears in `ip a`:

Network devices using DPDK-compatible driver
============================================
0000:05:00.0 'Elastic Network Adapter (ENA) ec20' drv=vfio-pci unused=ena

Network devices using kernel driver
===================================
0000:04:00.0 'Elastic Network Adapter (ENA) ec20' if=ens785 drv=ena
unused=vfio-pci *Active*

$ ip a
ubuntu@ip-172-31-17-144:~/Scripts$ 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: ens785: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP
group default qlen 1000
    link/ether 0a:0f:1f:db:ca:73 brd ff:ff:ff:ff:ff:ff
    inet 172.31.17.144/20 brd 172.31.31.255 scope global dynamic ens785
       valid_lft 3314sec preferred_lft 3314sec
    inet6 fe80::80f:1fff:fedb:ca73/64 scope link
       valid_lft forever preferred_lft forever

[-- Attachment #2: Type: text/html, Size: 4084 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-11-04 17:14 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-02 23:14 If or how one gets an IP address associated with a vfio-pci bound NIC fwefew 4t4tg
2021-11-03 18:11 ` David Christensen
2021-11-04  1:40   ` fwefew 4t4tg
2021-11-04 17:14     ` David Christensen

DPDK usage discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.dpdk.org/users/0 users/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 users users/ http://inbox.dpdk.org/users \
		users@dpdk.org
	public-inbox-index users

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.users


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git