한국어

네트워킹

온누리070 플레이스토어 다운로드
    acrobits softphone
     온누리 070 카카오 프러스 친구추가온누리 070 카카오 프러스 친구추가친추
     카카오톡 채팅 상담 카카오톡 채팅 상담카톡
    
     라인상담
     라인으로 공유

     페북공유
    
     PAYPAL
     
     PRICE
     

pixel.gif

    before pay call 0088 from app


기본적으로 리눅스의 이더넷 이름은 eth0, eth1 과 같이 eth 를 prefix로 사용했었습니다. 그런데 몇 해 전부터 리눅스 배포판들이 eth0 과 같은 전통적인 ethernet naming을 버리고 em1 이니, p2p1 이니 같은 해괴한(?) 이름을 쓰기 시작하더군요.

이더넷이 하나 뿐인 일반적인 PC 환경에서야 eth0 이든, em1 이든, p2p1 이든 네트워크를 쓸 수 있는 포트가 하나 밖에 없으니 신경 쓸 일이 없습니다.

하지만 서버 환경에서는 상당히 도움이 되었던 모양입니다. 라우터가 되었든지, 아니면 조금만 큰 서버 같은 경우에도 HA 용으로나 network bonding 등의 용도로 이더넷 포트가 몇 개씩 되니까요. 이런 상황이라면 어떤 포트가 eth0 인지, 어떤 포트가 eth1 인지 구분하기가 엄청 곤란해집니다.

심지어 더 옛날에는 커널이 PCI bus를 읽는 순서에 따라 eth0 이 다음번 부팅 때에는 eth1 이 되기도 하는 등 문제가 많았습니다. 그래서 udev 가 도입되자

/etc/udev/rules.d/70-persistent-net.rules

같은 파일을 이용해서 MAC 주소를 특정 이더넷 이름으로 강제로 매핑하는 방법이 많이 사용되었습니다.

그러다가 몇 해 전부터는 아예 이더넷 이름에 물리적인 순서를 박아 넣는 방식이 사용되기 시작합니다. 그게 바로 em1 이니 p2p1 같은 녀석들이죠. em1 은 온보드 이더넷 포트이고, p 로 시작하는 건 PCI NIC 입니다.

p 다음의 첫번째 숫자는 PCI 슬롯의 이름이고, 두번째 p의 다음번 숫자는 그 NIC가 여러 포트를 가지고 있을 때 첫번째 포트를 의미하죠.

이렇게 해 놓으니 편하긴 하지만...

예전에 eth 를 기준으로 하드코딩 했던 몇몇 application 들이 동작하지 않는 경우도 있습니다. 특히 제가 자주 썼던 iptraf 는 eth 만 인식합니다.

그 외에도 상황에 따라 이더넷 이름을 바꾸어야 하는 경우가 있는데. 이 때는 다음 방법을 쓰면 됩니다.

참조 :
http://unix.stackexchange.com/questions/141444/consistent-network-interface-name-ubuntu-using-pci-slot

여기에서 가져왔습니다.

요약하자면,
역시나 /etc/udev/rules.d/70-persistent-net.rules 를 이용하는 방법입니다.

 # vi /etc/udev/rules.d/70-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="88:51:fb:64:40:14", ATTR{dev_id}=="0x0",
ATTR{type}=="1", KERNELS=="0000:00:19.0", NAME="eth0"

와 같이 한 줄로 죽 써 주면 됩니다.

address 는 MAC 주소이고,
KERNELS 는 lspci -D 애서 나오는 PCI 버스의 아이디입니다.

$ lspci -D
0000:00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (rev 09)
....
0000:00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)
....

0000:03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)

그리고 NAME에 원하는 이름을 써 주면 됩니다. 리부팅하면 eth0, eth1 로 이름이 나옵니다.
이상입니다.

아참. 제가 테스트한 환경은 우분투 14.04 입니다. centos 에서도 아마 비슷하게 되지 싶습니다.
참고 부탁드립니다. 감사합니다.



리눅스 서버의 경우 랜카드가 교체될 경우(Mac주소가 변경시)

ethX의 번호가 다음 번호 변경되는데 특히 가상머신의 경우 OS이미지를 다른 가상머신에서 사용시 기존 가상머신의

MAC주소와 달라 eth0이던게 eth1로 변경됨.. 물론 ifcfg-eth0을 eth1로 변경해도 됨..

 

이 경우는 아래와 같이 기존의 네트워크 카드가 /etc/udev/rules.d/70-persistent-net.rules 에 정의 되어 있어 생기는 현상

아래의 경우는 실제 디바이스는 eth2 이지만 기존에 정의된 eth0과 eth1로 인해 eth2까지 밀린 상황

해결 방법은 파일을 수정(eth1, eth2 내용을 삭제 후 eth0의 mac주소값을 52:54:00:a6:f8:42에서 52:54:00:21:E9:C3 으로 변경 또는

삭제 후 재부팅을 한다. 물론 ifcfg-eth0 파일이 있어야 네트워크를 사용가능함..

 

[root@localhost /]# ifconfig -a
eth2      Link encap:Ethernet  HWaddr 52:54:00:21:E9:C3
          inet addr:192.168.10.108  Bcast:192.168.10.255  Mask:255.255.255.0
          inet6 addr: fe80::5054:ff:fe21:e9c3/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:11724 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2465 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1016787 (992.9 KiB)  TX bytes:437308 (427.0 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

 

[root@localhost /]# cat /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

 

# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="52:54:00:a6:f8:42", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

 

# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="52:54:00:5b:a3:8c", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

 

# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="52:54:00:21:e9:c3", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2" 

 

 

[root@localhost /]# rm /etc/udev/rules.d/70-persistent-net.rules
rm: remove regular file `/etc/udev/rules.d/70-persistent-net.rules'? y
[root@localhost /]# ls /etc/udev/rules.d/
60-fprint-autosuspend.rules  60-pcmcia.rules  60-raw.rules  70-persistent-cd.rules  90-alsa.rules  90-hal.rules  98-kexec.rules

 

[root@localhost /]# mv /etc/sysconfig/network-scripts/ifcfg-eth2 /etc/sysconfig/network-scripts/ifcfg-eth0

[root@localhost /]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth2    // eth0으로 변경
#HWADDR=52:54:00:A6:F8:42
TYPE=Ethernet
#UUID=803a97dd-c983-439e-8d0f-21f85f309062
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp

 

[root@localhost /]# reboot

 

[root@localhost /]# ls /etc/udev/rules.d/
60-fprint-autosuspend.rules  60-pcmcia.rules  60-raw.rules  70-persistent-cd.rules  70-persistent-net.rules  90-alsa.rules  90-hal.rules  98-kexec.rules 

// 재부팅 후 70-persistent-net.rules 생성

 

[root@localhost /]# cat /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="52:54:00:21:e9:c3", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

 


레드햇 계열의 리눅스는 7버전으로 넘어 오면서 많은점이 바뀌었는데 네트워크 디바이스 이름이 틀림

기존 버전과 같이 ifcfg-eth0, eth1..... 과 같은 형태가 아닌 ifcfg-enpXX 형식인데 BIOS에서 디바이스를 보는 형식으로 바뀌었음

예를 들면 아래와 같이 enp0s25와 enp4s0의 디바이스가 있는 경우 enp0s25는 pci 0번 버스의 25번째 슬롯(00:19:0 - 16진수)이며

enp4s0은 pci 4번 버스에 0번 슬롯(04:00:0 - 16진수)을 나타내는 형식

 

[root@localhost ~]# ls /etc/sysconfig/network-scripts/ifcfg-* -alrt
-rw-r--r--. 1 root root 254 Sep 16 20:51 /etc/sysconfig/network-scripts/ifcfg-lo
-rw-r--r--. 1 root root  39 Jan  4 16:33 /etc/sysconfig/network-scripts/ifcfg-enp0s25
-rw-r--r--. 1 root root 288 Jan  4 23:00 /etc/sysconfig/network-scripts/ifcfg-enp4s0

[root@localhost ~]# lspci | grep -i ether
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-LM (rev 05)
04:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)

 

다만 기존의 eth0, eth1으로 변경 하기 원한다면 /etc/default/grub 파일을 열어 GRUB_CMDLINE_LINUX 항목에 net.ifnames=0 biosdevname=0 항목을 추가후 저장..

grub2-mkconfig -o /boot/grub2/grub.cfg 를 통해 grub를 업데이트 하여 아래와 같이 done이 나오면 완료

 

[root@localhost ~]# vi /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/swap ...(생략)... net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"

 

[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-123.el7.x86_64

(생략)

Found initrd image: /boot/initramfs-0-rescue-2a41b98f9b9f48428ee53544d9cf87ef.img
done
[root@localhost ~]#

 

이후 재부팅을 완료하면 네이밍 형식은 바뀌지만 /etc/sysconfig/network-scripts/ 밑에는 기존의 enp형식으로 만 있으면 네트워크를 사용 할수 없어

eth형식의 파일이 필요 하기 때문에 아래와 같이 파일의 이름을 바꿔주고 실제 그 파일 내의 Device 이름도 변경

이후 재부팅하면 모두 적용 되며 2개 이상의 device의 경우는 /etc/udev/rules.d/70-persistent-net.rules 파일을 수정해야 함

 

[root@localhost ~]# mv /etc/sysconfig/network-scripts/ifcfg-enp0s25 /etc/sysconfig/network-scripts/ifcfg-eth0

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR=D0:50:99:51:91:19
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s25  // => eth0으로 변경
UUID=466db8ad-a566-4b5d-878c-ab442505c1d3
ONBOOT=no



출처: http://neo-blog.tistory.com/13 [네오블로그]

조회 수 :
9563
등록일 :
2017.08.29
12:33:51 (*.160.88.18)
엮인글 :
http://webs.co.kr/index.php?document_srl=3311354&act=trackback&key=4e6
게시글 주소 :
http://webs.co.kr/index.php?document_srl=3311354
List of Articles
번호 제목 글쓴이 날짜 조회 수
110 How to install a Debian 9 (Stretch) Minimal Server 데비안 9 설치 admin 2018-06-13 782
109 Which is better, GCC or Clang? admin 2018-06-13 788
108 고정ip설정, dns설정(데비안) linux 리눅스 admin 2018-06-13 854
107 [리눅스] 부팅 시 자동 실행 프로그램 등록|작성자 나눔HN admin 2018-06-01 972
106 리눅스 서버 유지보수 점검 메인터넌스 상황 파악 admin 2018-04-14 1230
105 Top 20 OpenSSH Server Best Security Practices 보안 대책 실제 적용 admin 2018-04-14 1297
104 Start Stop Restart Apache 2 Web Server Command Debian Ubuntu CentOS RHEL Fedora admin 2018-04-14 1119
103 리눅스 한글 2014 뷰어 다운로드 - hwpviewer admin 2018-03-28 1461
102 리눅스를 백업 복구 tar admin 2018-03-28 1652
101 zip 압축 파일 및 텍스트 파일의 한글 깨짐 해결 방법 admin 2018-03-28 1992
100 Lnux export how to admin 2017-12-17 2745
99 What's the difference between “adduser” and “useradd”? admin 2017-12-15 2769
98 useradd Command 리눅스 admin 2017-12-15 4876
97 How To Install Java with Apt-Get on Ubuntu 16.04 oracle java admin 2017-10-13 3536
96 우분투 Linux(Ubuntu)에 Java설치 및 환경 설정하는 방법 admin 2017-10-13 3611
95 우분투 다운로드 사이트 주소 ubuntu download 16.04.3 17.04 site link admin 2017-10-13 3805
94 How to install Java on linux with no Internet connectivity (using local repository) admin 2017-10-01 3538
93 윈도우 ssh 접속 프로그램 admin 2017-09-29 4126
92 openvpn Easy Windows Guide admin 2017-09-20 8129
91 OpenVPN - Getting started How-To admin 2017-09-20 6420
90 openssl 을 이용한 인증서 생성 절차를 정리한다. 개인키 CSR SSL 인증서 파일 생성 admin 2017-09-14 4202
89 How to Manually Unblock / Unban IP Address in fail2ban 차단풀기 admin 2017-09-12 6155
88 How To Protect SSH with fail2ban on Debian 7 데비안 ssh 방어 무작위 로그인 admin 2017-09-12 8863
87 SSH 무작위 로그인 시도 막기(With Fail2Ban on CentOS 6/7 + selinux) admin 2017-09-12 4381
86 리눅스 데비안 네트워크 설정 유선랜 무선랜 linux debian network setting 설정 admin 2017-09-07 9809
85 linux debian 계열 network 설정 테트워크 데비안 admin 2017-09-07 4015
84 PUTTY DOWNLOAD - FREE SSH & TELNET CLIENT admin 2017-09-03 9012
83 debian 8.8 download cd1 cd2 cd3 etc admin 2017-09-03 3974
82 Debian Download 데비안 리눅스 다운로드 admin 2017-09-02 4662
81 데비안 리눅스 부팅시에 방화벽 서버에 자동실행 되게 설정 해보자 admin 2017-08-30 4105
80 리눅스 시작시에 부팅시 프로세스 프로그램 자동 실행 설정 admin 2017-08-30 11021
79 리눅스 시작시 부팅 시, 프로그램 자동실행 등록하기 admin 2017-08-30 6705
78 리눅스 부팅시 시작시 프로그램 명령어 실행하기 (Linux Init script) admin 2017-08-30 6849
77 리눅스 부팅시 자동 실행 명령스크립트 실행하기 만들기 이해 linux booting admin 2017-08-30 9990
76 부팅시 자동실행 명령어 스크립트, rc.local admin 2017-08-30 13606
75 the world’s most widely deployed RADIUS server document admin 2017-08-29 8523
» 네트워크 디바이스명 변경 리눅스 eth0 eth1 admin 2017-08-29 9563
73 Cloned VMware CentOS6 Server "device eth0 does not seem to be present, admin 2017-08-29 4122
72 VMWARE VM Error boot loader install grub - install /dev/sda or /dev/hda MBR linux admin 2016-01-27 4753
71 Linux and Unix touch command admin 2015-11-15 5163
70 Configuration of Red Hat 5.4 Xen for SR-IOV Support admin 2015-08-02 5016
69 apt-get install linux-image-2.6.26-2-686-bigmem admin 2015-06-27 5137
68 intel i210 driver install and compile debian admin 2015-06-27 9547
67 Debian / Ubuntu Linux Install Kernel Headers Package admin 2015-06-27 5176
66 mount -t auto /dev/sdb1 /mnt && ls /mnt admin 2015-06-27 5080
65 kali linux 해킹 hacking attack DDOS etc tools admin 2015-06-24 5930
64 sources.list lenny admin 2015-02-03 5899
63 Ubuntu 14.04 원격 접속(xrdp) 설정 admin 2014-12-21 30058
62 Remote Desktop Connection from Windows 7/8 to Ubuntu 14.04 admin 2014-12-21 6578
61 Using Windows RDP to Access your Ubuntu Instance admin 2014-12-21 6389
60 Install GUI on Ubuntu Server admin 2014-12-21 6316
59 How to start GUI from command line? admin 2014-12-21 6353
58 Download all files in a directory using WGET admin 2014-12-16 6466
57 문서 편집기 vi vim command 명령어 정리 admin 2014-10-29 8322
56 find 명령 사용 예제들 admin 2014-10-29 7011
55 특정 IP 엑세스 못하게 하는방법 admin 2014-10-29 7167
54 scp 명령어를 이용한 파일 복사 및 전송 admin 2014-10-29 8853
53 [리눅스] 소프트웨어 레이드의 리빌딩 및 리싱킹 속도를 높이는 5가지 방법 admin 2014-10-17 7391
52 /bin/false, /sbin/nologin 의 차이점 admin 2014-10-13 8534
51 리눅스 시스템 유저 추가 명령어 useradd 사용하기 admin 2014-08-09 7682
50 리눅스 시스템 시작시에 자동 실행할 파일 등록하기 admin 2014-03-22 42694
49 linux 에티터 명령어 정리 포그라운드 전환 : ctrl + z 다시 vi 모드로 돌아오려면 fg admin 2014-03-05 14647
48 Linux Memory Management – Virtual Memory and Demand Paging admin 2014-03-03 9217
47 iptables rules tcp drop all port except tcp 22 admin 2014-02-26 10631
46 seagate HD 시게이트 하드 디스크 A/S 에이에스 기간 조회 및 받는 3가지 방법 admin 2013-12-09 11492
45 SSH Without Authentication Using Key Files (CentOS 5.6) admin 2013-11-22 9999
44 Getting started with SSH public key cryptography admin 2013-09-05 19710
43 암호 없이 SSH 접속하기 admin 2013-09-05 10709
42 Linux Date Command Examples to Display and Set System Date Time admin 2013-07-11 12356
41 FreeRADIUS 설치(freeradius-sever-2.1.8) admin 2013-04-19 25133
40 Radius를 이용한 ssh 인증 서버 구축하기 admin 2013-04-19 18189
39 CentOS 5.4에서 RADIUS 서버 설치하기 admin 2013-04-19 28330
38 Event IP 20187 admin 2013-04-08 10457
37 리눅스에서 자바(JDK) 설치하기 admin 2013-04-08 11640
36 리눅스 네트워크 설정 멸령어 Linux admin 2013-04-08 11938
35 [linux]리눅스 버전및 CPU등 환경정보 확인하기 admin 2013-04-08 47773
34 Linux 시스템 백업과 복원 admin 2013-04-04 13045
33 tar로 전체시스템 백업 LINUX Backup admin 2013-04-04 30563
32 다운된 리눅스서버 응급복구 admin 2013-03-28 16953
31 Build a RADIUS server on Linux admin 2013-03-23 16362
30 Deploying FreeRADIUS with the MySQL Cluster Database file admin 2013-03-22 11002
29 FREE RADIUS 활용및 응용 admin 2013-02-23 22924
28 리눅스에 RADIUS 서버 구현하기 admin 2012-09-01 55792
27 Debian CD DVD 다운로드 링크 헤메지말고 바로 다운로드하지요 admin 2012-08-18 11491
26 Site builder shootout: Drupal vs. Joomla vs. WordPress admin 2012-07-15 62152
25 WinXP 부팅안되는 현상 NTLDR is missing 메세지 admin 2012-07-12 12200
24 윈도우XP 알면 정말 편한 숨겨진 기능 60가지 admin 2012-05-11 17297
23 한국인/국내기업은 얼마나 Linux Kernel에 기여할까? admin 2012-04-29 15185
22 scp, ssh, rsync등을 사용할때에 SSH 비밀번호 묻는것 피하기 admin 2012-04-15 12997
21 [Linux/SSL] 리눅스 서버에 Apache 2 설치 및 SSL 설정하기(mod_ssl, openssl) admin 2012-04-15 13811
20 리눅스의 막강한 네트워크 필터 iptables admin 2012-04-15 12342
19 Centos net install web http admin 2012-03-02 17697
18 Linux 시스템 백업과 복원 admin 2012-02-28 15375
17 검색 파일리스트 만든 다음 여러파일 한방에 압축하기 admin 2012-02-14 13873
16 linux 파티션 디렉토리 용량 확인방법 전체 폴더 크기 사이즈 admin 2012-01-05 14405
15 How to disable IPv6 in Debian Lenny and Squeeze admin 2011-12-29 12334
14 리눅스 네트워크 설정 LINUX admin 2011-12-19 13526
13 다양한 사운드 파일있는곳 admin 2011-12-19 11462
12 모든 CPU 벤치마크 수치 admin 2011-12-16 13377
11 Wireshark admin 2011-12-16 11573