- OSI 7 계층 구조
- Linux
- Ubuntu Server Network 설정
- CentOS Network 설정
- SSH Port Forwarding
- IP Alias
- Bonding
- Route 설정
- CentOS Network
- TCP/IP 설정
- NIC 설정
- NIC 설정 파일
- NIC 설정 명령어
- Gateway (Route)
- VLAN (Virtual LAN)
- IP Masquerade (NAT)
- 무작위 모드 (promiscous mode)
- CentOS IP Alias
- DSR (Direct Server Return) 구성
- CentOS Bonding
- CentOS Teaming
- Linux Bridge
- Linux Namespace
- Windows
- Windows 8에서 네트워크 제한 오류 처리
- 연결 브리지
- Windows 가상 랜카드
- Windows 7, Virtual WiFi Miniport Adapter
- Windows을 무선 액세스 포인터로
- windows 10 모바일 핫스팟
- Windows 7을 무선 액세스 포인터로
- Windows 8을 무선 액세스 포인터로
- Windows 7 네트워크 공유하기
- 유선 LAN을 와이파이로 공유
- Windows 7 IP Routing
- IP 주소
- Appliance
- VMWare Network 설정
- VirtualBox Network 설정
- VirtuaBox 포트 포워딩
- Oracle VirtuaBox 포트 포워딩
- Network 용어
- Network 관련 Table
- ARP Table
- MAC table
- Routing Table
- Network 암호
- 참고 문헌
OSI 7 계층 구조
{| border="1" cellspacing="0" cellpadding="2" style="width: 100%;"
|-
| style="text-align: center; background-color: rgb(241, 241, 241);" rowspan="1" colspan="2" | 계층
| style="text-align: center; background-color: rgb(241, 241, 241);" | 장비
| style="text-align: center; background-color: rgb(241, 241, 241);" | 상세
|-
| style="text-align: center;" | 7
| style="text-align: center;" |
Application Layer
(응용 계층)
| style="text-align: center;" |
L7 Switch
Gateway
|
- L7 Switch : 부하 분산, 리디렉션, 필터링, VPN 등
- 네트워크 가상 터미널
- 파일 액세스/전송/관리, 우편 서비스, 디렉토리 서비스
|-
| style="text-align: center;" | 6
| style="text-align: center;" |
Presentation Layer
(표현 계층)
| style="text-align: center;" | Gateway
|
변환, 암호화, 압축, 보안
|-
| style="text-align: center;" | 5
| style="text-align: center;" |
Session Layer
(세션 계층)
| style="text-align: center;" | Gateway
|
세션 관리, 동기화, 대화 제어, 원활한 종료
|-
| style="text-align: center;" | 4
| style="text-align: center;" |
Transport Layer
(전송 계층)
| style="text-align: center;" |
L4 Switch
Gateway
|
L4 Switch : Load Balance, Fail Over
종단-대-종단 전달, 서비스-점 주소 지정, 분할과 재조립, 연결 제어
|-
| style="text-align: center;" | 3
| style="text-align: center;" |
Network Layer
(네트워크 계층)
| style="text-align: center;" |
Router
L3 Switch
|
L3 Switch
Router : 외부 네트워크로 연결 가능
Switching : 물리적 링크간의 일시적인 연결
Routing : 최적의 경로로 연결
발신지-대-목적지 전달 (IP로 연결)
논리적인 주소 지정, 라우팅, 주소 변환, 다중화
|-
| style="text-align: center;" | 2
| style="text-align: center;" |
Data Link Layer
(데이터 링크 계층)
| style="text-align: center;" |
Bridge
L2 Switch
|
L2 Switch
Bridge :이더넷 장비를 물리적으로 연결
node-to-node 전달 (MAC으로 연결)
주소 지정, 접근 제어, 흐름 제어, 오류 처리, 동기화
|-
| style="text-align: center;" | 1
| style="text-align: center;" |
Physical Layer
(물리 계층)
| style="text-align: center;" |
Repeater
Hub
|
Repeater : 단순히 전기적인 신호만 증폭
Hub : 여러대의 장비를 LAN에 접속
|}
Linux
Ubuntu Server Network 설정
[Ubuntu Server](Ubuntu Server.md)에 있는 네트워크 카드명을 확인 한다.
ifconfig -a : lo, eth0, eth1 등의 이름을 확인할 수 있다.
네트워크 카드(eth0)를 유동 아이피(DHCP)로 설정할 경우
vi /etc/network/interfaces 파일에서 다음과 같이 추가 또는 수정 한다.
auto eth0
iface eth0 inet dhcp
Network Card를 재시작 합니다.
ifdown eth0
ifup eth0
/etc/init.d/networking restart : Network 재시작
네트워크 카드(eth0)를 고정 아이피로 설정할 경우
vi /etc/network/interfaces 파일에서 다음과 같이 추가 또는 수정 한다.
auto eth0
iface eth0 inet static
address 203.256.15.23 #--- address 앞부분은 tab을 사용해야 한다.
netmask 255.255.255.0
network 203.256.15.0
broadcast 203.256.15.255
gateway 203.256.15.1
dns-nameservers 203.231.11.118 203.231.11.115
vi /etc/resolv.conf 를 열어서 아래와 DNS 서버를 입력
가상 환경에서 NAT를 설정 하였을 경우 resolv.conf가 초기화 되는 문제가 발생 한다.
nameserver 164.124.101.2
nameserver 168.126.63.1
nameserver 203.231.11.118
nameserver 203.231.11.115
nameserver 210.220.163.82
nameserver 219.250.36.130
/etc/init.d/networking restart : Network 재시작
CentOS Network 설정
CentOS에 있는 네트워크 카드명을 확인 한다.
ifconfig -a : lo, eth0, eth1 등의 이름을 확인할 수 있다.
/etc/sysconfig/network-scripts/ifcfg-eth0 에 네트워크 카드를 위한 설정이 저장 된다.
#--- eth0 네트워크 카드에 고정 IP 설정시
DEVICE=eth0
BOOTPROTO=static #--- none을 사용할 수 있습니다.
ONBOOT=yes
IPADDR=10.0.0.11
NETMASK=255.255.255.0
GATEWAY=10.0.0.1
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
#--- eth4 네트워크 카드에 DHCP 설정시
DEVICE=eth4
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
/etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost.localdomain #--- 호스트명과 도메인명 지정
# HOSTNAME=localhost
# DOMAINNAME=localdomain
/etc/hosts #--- 호스트명 지정
127.0.0.1 localhost.localdomain localhost
/etc/resolv.conf #--- DNS를 위한 네임서버를 지정 한다.
search local cloudserver.com
nameserver 164.124.101.2 #--- 데이콤에서 사용하는 nameserver IP
nameserver 168.126.63.1 #--- 코넷에서 사용하는 nameserver IP
/etc/host.conf
#--- 호스트명 찾는 우선 순위 지정, hosts. /etc/hosts, bind. DNS 서버
multi on
order hosts,bind #--- /etc/hosts 파일에서 찾고 없을 경우 DNS 서버에서 찾는다.
vi /etc/hostname
osnode101.openstack.com
기타 설정 파일
vi /etc/services
vi /etc/protocols
Network 설정 GUI 명령어
system-config-network
Network 설정이 마무리 되면 network 서비스를 재기동 한다.
ifdown eth0
ifup eth0
service network restart
SSH Port Forwarding
[http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/System_management/Proxy] ](http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/System_management/Proxy)
IP Alias
VIP (Virtual IP)
IP Alias는 하나의 인터페이스 카드에 여러개의 가상아이피(내부IP 또는 실제IP)를 설정하는 것
Windows에서 IP Alias
네트워크 -> 속성
Internet Protocol Version 4 (TCP/IPv4) 선택 -> 속성 -> 고급
IP 주소 추가
Ubuntu Server에서 IP Alias
임시 IP Alias 설정
ifconfig eth0:1 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255
영구 IP Alias 설정
cd /etc/sysconfig/network-script/
cp ifcfg-eth0 ifcfg-eth0:0
DEVICE=eth0:0
BOOTPROTO=static
IPADDR=192.168.1.1
onBOOT=yes
USERCTL=no
DEVICE=eth0:1
onBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.2
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BORADCAST=192.168.1.255
USERCTL=no
Bonding
NIC 여러개를 묶어서 하나의 NIC로 제공 합니다.
Bonding 방식
하나의 서버에 있는 NIC를 bonding
두개 이상의 서버에 있는 NIC를 bonding (특별한 H/W가 준비되어야 합니다)
Bonding의 다른 표현
이더넷 본딩(Ethernet bonding) : Linux 장비에서 사용하는 용어
포트 트렁킹(port trunking)
채널 티밍(channel teaming)
NIC 티밍(teaming) : Windows Server에서 사용하는 용어
링크 통합(link aggregation) : Switch 장비 등에서 사용하는 용어
*서로 다른 Network 장비 여러 NIC를 하나로 묶는 방법
APA : HP 장비에서 사용하는 용어
vi /etc/sysconfig/network-scripts/ifcfg-bond0
apt-get install ifenslave
modprobe bonding
lsmod | grep bonding
참고 문헌
Route 설정
'''Route 조회'''
route
route -n
netstat -rn
netstat -r
ip route
ip route list
'''Route 등록'''
route add -net 아이피 netmask 넷마스크 gw ~ dev 장치명
ip route add 192.0.2.0/24 via 10.0.0.1 [ifname](dev)
vi /etc/sysconfig/network-scripts/route-*
참고 문헌
CentOS Network
TCP/IP 설정
vi /etc/sysctl.conf #--- 커널 관련 설정 파일
/proc/sys/~ 파일에 설정값이 저장됨
sysctl -a #--- 설정값 조회
sysctl -w 변수="변수값" #--- 설정값 지정
sysctl -w net.ipv4.tcp_fin_timeout=30 #--- FIN_WAIT2의 timeout 시간을 30초로 지정 (Default는 60초 임)
참고 문헌
NIC 설정
NIC 설정 파일
/etc/sysconfig/network-scripts/ifcfg-* (eth0, eth1, ...)
'''DHCP 설정'''
DEVICE=eth2 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=dhcp
'''Static 설정'''
DEVICE=eth0 BOOTPROTO=static ONBOOT=yes IPADDR=10.20.0.2 NETMASK=255.255.255.0 GATEWAY=10.20.0.1 TYPE=Ethernet USERCTL=no IPV6INIT=no PEERDNS=yes
ifdown eth0
ifup eth0
service network restart #--- CentOS 6.0
systemctl restart network #--- CentOS 7.0
'''참고 문헌'''
[CentOS Network 설정](Network.md#CentOS Network 설정.md)
NIC 설정 명령어
'''Network 조회'''
ifconfig -a ip link list ip link show ip addr show netstat -i
'''IP 설정 1'''
ip addr add 192.168.1.101/24 brd 192.168.1.255 dev eth0 ip link set dev eth0 up ip addr show
'''IP 설정 2'''
ifconfig eth0 192.168.1.101/24 up ifconfig eth0 192.168.1.101 netmask 255.255.255.0 broadcast 192.168.1.255 up
'''NIC, Network 기동 종료'''
ifdown eth0 ifup eth0 service network restart systemctl restart network
'''MTU 설정'''
Maximum Transmission Unit
1회 전송(1개의 프레임)으로 송신할 수 있는 데이터의 최대값
ip link show eth0 ip link set eth0 mtu 9000
Gateway (Route)
Route가 여러개 설정되어 있는 경우 metric가 높은 라우터가 사용 됩니다.
'''Gateway 조회'''
route route -n
'''Gateway 설정'''
vi /etc/sysconfig/network-scripts/ifcfg-eth?
GATEWAY=10.20.0.1
vi /etc/sysconfig/network #--- Default Gateway 설정
GATEWAY=~
vi /etc/sysconfig/network-scripts/route-eth0
ADDRESS0=IP대역
NETMASK0=
GATEWAY0=
ADDRESS1=IP대역
NETMASK1=
GATEWAY1=
'''Gateway 임시 설정'''
route add default gw 192.168.0.2 dev eth0 route del default gw 192.168.0.2 dev eth0
참고문헌
VLAN (Virtual LAN)
'''Linux Module 설정'''
lsmod | grep 8021q modprobe 8021q
'''VLAN 생성'''
ip link add eth0 name vlan101 type vlan id 101 ip -d link show vlan101 ip link set vlan101 up ip addr show vconfig add eth0 101 ifconfig eth0.101 192.168.1.101 netmask 255.255.255.0 broadcast 192.168.1.255 up
vi /etc/sysconfig/network-scripts/ifcfg-eth0.101
DEVICE=eth0.101 VLAN=yes
'''VALN 삭제'''
ip link set vlan101 down ip link delete vlan101 ifconfig eth0.101 down vconfig rem eth0.101
'''참고 문헌'''
[Open vSwitch VLAN 설정](Open vSwitch.md#VLAN 설정.md)
IP Masquerade (NAT)
IP Masquerade (MASQ, IPMASQ)는 Linux의 NAT 기능 입니다.
mkdir -p /etc/sysctl.d/
vi /etc/sysctl.d/nat.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.eth0.send_redirects = 0
echo 1 > /proc/sys/net/ipv4/ip_forward echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects
iptables (방화벽) 설정 eth0에 들어온 요청을 NAT 처리
iptables -t nat -A POSTROUTING -o eth0 -s 0.0.0.0/0 -j MASQUERADE iptables-save > /etc/sysconfig/iptables
다른 NIC에 들어온 요청을 eth0를 통하여 NAT 처리
iptables -A FORWARD -o eth0 -j ACCEPT iptables -t nat -A POSTROUTING -o etho -j MASQUERADE iptables-save > /etc/sysconfig/iptables
무작위 모드 (promiscous mode)
모든 네트워크 트래픽을 받아 들이도록 설정
ifconfig eth0 promisc ifconfig eth0 0.0.0.0 promisc up
CentOS IP Alias
IP Alias는 NIC에 여러개의 IP를 부여하는 방법 입니다.
'''CentOS 6.x'''
일시적으로 IP Alias 설정
ifconfig eth0:0 192.168.1.101 up ifconfig eth0:0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255
영구적으로 IP Alias 설정 (eth0:0, eth0:1, ...)
vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
'''CentOS 7.0'''
IPADDR=198.51.100.5 PREFIX0=24 GATEWAY0=198.51.100.1 IPADDR1=192.0.2.6 PREFIX1=24
DSR (Direct Server Return) 구성
L4 Switch 등의 장비를 통해서 들어오는 요청을 L4 장비를 거치지 않고 바로 client로 반환할 때, L4 Switch의 Public IP를 사용하여 반환되도록 하는 설정 방법 입니다.
vi /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.123.20 #--- L4 장비의 Public IP
NETMASK=255.255.255.255 #--- Loopback 주소를 broadcast하는 것을 방지
NETWORK=192.168.123.0
BROADCAST=192.168.123.255
onBOOT=yes
vi /etc/sysctl.conf #--- ARP 문제로 인해 필요시
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
참고 문헌
CentOS Bonding
두개의 NIC (eth0, eth1)을 묶어서 bond0 네트워크를 생성 합니다.
'''Bonding module 로딩'''
modprobe --first-time bonding modinfo bonding lsmod | grep bonding
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 TYPE=Bond #--- Interface Type IPADDR=192.168.1.150 PREFIX=24 ONBOOT=yes BOOTPROTO=static BONDING_MASTER=yes #--- BONDING_OPTS="mode=1 miimon=100" #--- Bonding mode 지정, 모니터링 주기 100 ms 1. BONDING_OPTS="mode=4 miimon=100 lacp_rate=1" #--- LACP 설정
vi /etc/modprobe.d/bonding.conf 파일을 만들어 BONDING_OPTS를 설정할 수도 있음
alias bond0 bonding
options bond0 mode=6 miimon=100
vi /etc/sysconfig/network-scripts/ifcfg-eth0, ifcfg-eth1
DEVICE=eth0 TYPE="Ethernet" ONBOOT="yes" BOOTPROTO="none" #--- MASTER=bond0 #--- Binding NIC 이름 지정 SLAVE=yes #---
systemctl restart network
'''Bonding 정보 조회'''
cat /proc/net/bonding/bond0
'''Gateway에 등록'''
vi /etc/sysconfig/network
GATEWAYDEV=bond0
'''Bonding Mode'''
{| cellspacing="0" cellpadding="2" border="1" width="100%" bgcolor="#FFFFFF" align="center"
|-
| width="10%" align="center" valign="middle" style="background-color:#eee;" | No
| width="20%" align="center" valign="middle" style="background-color:#eee;" | Mode
| width="70%" align="center" valign="middle" style="background-color:#eee;" | 상세
|-
| align="center" valign="middle" | mode=0
| align="center" valign="middle" | balance-rr
Round-robin policy |
---|
align="center" valign="middle" |
align="center" valign="middle" |
Active-backup policy |
- |
align="center" valign="middle" |
align="center" valign="middle" |
MAC address의 XOR값 사용 |
- |
align="center" valign="middle" |
align="center" valign="middle" |
Broadcast policy |
- |
align="center" valign="middle" |
align="center" valign="middle" |
Dynamic link aggregation (IEEE 802.3ad), LACP Aggregation group 생성 |
- |
align="center" valign="middle" |
align="center" valign="middle" |
Adaptive transmit load balancing |
- |
align="center" valign="middle" |
align="center" valign="middle" |
Adaptive load balancing |
} |
CentOS Teaming
CentOS 7에서 지원하는 Bonding으로 기존의 Bonding보다 효율이 좋습니다.
'''Teaming 모듈 로드와 teamd 패키지 설치'''
modprobe team yum -y install teamd vi /etc/sysconfig/network-scripts/team0 DEVICE=team0 NAME=team0 BOOTPROTO=static IPADDR=192.168.122.120 NETMASK=255.255.255.0 GATEWAY=192.168.122.1 ONBOOT=yes PREFIX=24 DEVICETYPE=Team #--- TEAM_CONFIG='{"runner":{"name":"activebackup"},"link_watch":{"name":"ethtool"}}' #---
Runner 종류
broadcast
roundrobin
activebackup
loadbalance
lacp
vi /etc/sysconfig/network-scripts/ifcfg-eth0, eth0 DEVICE=eth1 NAME=eth1 HWADDR=52:54:00:8c:33:ba ONBOOT=yes DEVICETYPE=TeamPort #--- TEAM_MASTER=team0 #--- Team master 지정 TEAM_PORT_CONFIG='{"prio":99}' #--- prio. 우선순위
'''Teaming 정보 조회'''
teamnl team0 ports teamdctl team0 state
Linux Bridge
Linux Bridge를 사용하면 아래와 같은 이점이 있습니다.
Bridge에 방화벽 설정 가능
Bridge를 통해 서로 다른 네트워크를 연결
'''Bridge 모듈 설치'''
yum -y install bridge-utils
'''eth0를 br0 bridge에 연결'''
vi /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 TYPE=Bridge #--- Device type ONBOOT=yes BOOTPROTO=static DELAY=0 #--- IPADDR=192.168.0.240 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes BRIDGE=br0 #--- Bridge 지정 PROMISC=yes #--- Promisc 모드 설정
'''Bridge 상태 확인'''
brctl show ip --statistics link list netstat --all --interfaces
'''Port Forward 설정'''
vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
'''brctl을 사용하여 Bridge 설정'''
brctl addbr br0 #--- br0 Bridge 추가 brctl addif br0 eth0 #--- br0 Bridge에 eth0 NIC 연결 1. brctl delbr br0 1. brctl delif br0 eth0 ifconfig eth0 0.0.0.0 promisc up #--- eth0 NIC를 promisc 모드로 변경 vi /etc/sysctl.conf net.ipv4.ip_forward = 1
Linux Namespace
[Linux Namespace](Virtualization.md#Linux Namespace.md) 중 Network Namespace 참조
Windows
Windows 8에서 네트워크 제한 오류 처리
네트워크 필터 갯수를 1개(Default)에서 8개로 늘임
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network
이름: MaxNumFilters (없는 경우 만들면 됨)
종류: REG_DWORD
데이터: 8
연결 브리지
연결 브리지는 여러개의 네트워크를 연결하여 새로운 가상의 네트워크를 생성 한다. 이를 통해 연결 브리지된 네트워크는 새로 생성된 가상의 네트워크를 통해 외부에 접속할 수 있다.
두개의 네트워크를 연결하여 연결 브리지를 생성 한다.
연결 브리지를 만들 두개의 네트워크를 선택 한다.
오른쪽 마우스를 눌러 "연결 브리지" 메뉴를 선택 한다.
[550px|연결 브리지 생성](File:Network Bridge 001.png.md)
연결 브리지인 "네트워크 브리지"가 생성된 것을 확인 한다.
연결 브리지를 만들기 위해 선택된 네트워크에는 "브리지됨"이라고 표시 된다.
두개의 네트워크를 연결한 연결 브리지인 "네트워크 브리지"가 생성된 것을 확인 한다.
[550px|네트워크 브리지](File:Network Bridge 002.png.md)
"네트워크 브리지"의 네트워크를 설정 한다.
네트워크 브리지에서 오른쪽 마우스를 선택 한 후 "속성"을 선택 한다.
"어댑터"에서 "네트워크 브리지"에 포함된 네트워크를 선택할 수 있다.
연결 브리지는 하나의 네트워크 IP를 가지고 접속할 수 있고 연결 브리지에 포함된 네트워크("브리지됨"으로 표시됨)는 이 대표 IP로 외부와 통신을 한다.
[어댑터 관리](File:Network Bridge 003.png.md)기타 네트워크 설정은 기존의 네트워크 설정과 동일하므로 생략 한다.
참고 문헌
Windows 가상 랜카드
Windows에 포함되어 있는 Microsoft Loopback Adapter를 사용하여 가상의 랜카드를 추가하여 자체 네트워크를 구축 한다.
Windeows Vista에서 "제어판 -> 추가 옵션 -> 하드웨어 및 소리 -> 하드웨어 및 장치 보기" 메뉴에서 네트워크 어댑터를 선택한 후 "동작 -> 레거시 하드웨어 추가" 메뉴를 선택하여 가상의 네트워크 어댑터를 추가 한다.
"다음" 버튼을 선택하여 네트워크 어댑터를 추가 한다.
[네트워크 어댑터 추가 시작](File:Loopback add 01.png.md)
"목록에서 직접 선택한 하드웨어 설치(고급)"을 선택한 후 "다음" 버튼을 누른다.
[하드웨어 선택 옵션](File:Loopback add 02.png.md)
"네트워크 어댑터"를 선택한 후 "다음" 버튼을 누른다.
[네트워크 어댑터 선택](File:Loopback add 03.png.md)
네트워크 어댑터를 아래와 같이 선택 한다.
제조업체 : Microsoft
네트워크 어댑터 : Microsoft Loopback Adapter
[네트워크 어댑터 선택](File:Loopback add 04.png.md)
"다음" 버튼을 선택하여 선택한 네트워크 어댑터를 설치 한다.
[네트워크 어댑터 설치](File:Loopback add 05.png.md)
"마침" 버튼을 눌러 네트워크 어댑터 설치를 완료 한다.
[네트워크 어댑터 설치 완료](File:Loopback add 06.png.md)
장치 관리자의 네트워크 어댑터에 "Microsoft Loopback Adapter"가 추가 된 것을 확인할 수 있다.
[설치 확인](File:Loopback add 07.png.md)
참고 문헌
Windows 7, Virtual WiFi Miniport Adapter
Windows 7에서 제공하는 Virtual WiFi Miniport Adapter를 사용하여 가상의 무선 AP를 만들어 봅시다.
인터넷이 연결된 어뎁터에서 속성을 선택 합니다.
"공유"탭에서 "다른 네트워크 사용자가 이 컴퓨터의 인터넷 연경를 통해 연결할 수 있도록 허용"을 선택 합니다.
"홈 네트워킹 연결"에서는 이미 존재하고 있는 Virtual WiFi Miniport Adapter를 선택 합니다.
netsh wlan start hostednetwork
기타 설정
netsh wlan show drivers
netsh wlan show hostednetwork
netsh wlan set hostednetwork mode=allow "ssid=My-PC" "key=12344321" keyUsage=persistent
Windows을 무선 액세스 포인터로
windows 10 모바일 핫스팟
"시작 > 설정 > 네크워크 및 인터넷 > 모바일 핫스팟" 메뉴를 선택 합니다.
네트워크 이름 : 설정할 것
네트워크 암호 : 설정할 것
모바일 핫스팟을 "켬"으로 설정하면 핫스팟을 사용할 수 있습니다.
http://www.obcon.biz/wordpress/wp-content/uploads/2018/04/hotspot.png
주의) 컴퓨터가 사용 중지 상태가 되었다가 다시 사용 상태가 되면 핫스팟이 해제 됩니다.
Windows 7을 무선 액세스 포인터로
Windows 7을 무선 액세스 포인터로 만들어 주는 Connectify를 설치하여 사용해 봅시다.
Connectify 다운로드 사이트에서 ConnectifyInstaller.exe 를 다운로드 한다.
이름와 이메일 주소를 요구 합니다.
다운로드 받은 파일을 실행하여 Connectify를 설치 합니다.
Tray에 있는 Connectify를 클릭하여 네트워크 설정을 한다.
WiFi Name: "pnusSens", 무선으로 공유할 이름을 입력 한다.
Password: '''숫자로''' 10~16자리 암호를 입력 한다.
Internet: "로컬 영역 연결", 공유할 네트워크를 선택 합니다.
"Start Hotspot" 버튼을 누르면 설정이 완료 됩니다.
[Connectify 설정](File:Connectify setting.png.md)
다른 컴퓨터에서 "pnusSens" 무선 네트워크를 검색하여 사용하면 됩니다. 접속시 암호는 위에서 입력한 암호를 사용 합니다.
참고 문헌
Windows 8을 무선 액세스 포인터로
Windows 7 네트워크 공유하기
"네트워크 및 공유 센터 -> 어댑터 설정 변경 -> 로컬 영역 연결 -> 속성 -> 공유" 메뉴를 선택 합니다.
"다른 네트워크 사용자가 이 컴퓨터의 인터넷 연결을 통해 연결할 수 있도록 허용"을 체크 하고 "무선 네트워크 연결"을 선택 합니다.
"네트워크 및 공유 센터 -> 무선 네트워크 관리 -> 추가" 메뉴를 선택 합니다.
"애드혹 네트워크 만들기"를 선택하여 네트워크를 추가 합니다.
네트워크 이름 :
보안 종류 : WEP
보안 키 : 13자 입력
"이 네트워크 저장" 체크
유선 LAN을 와이파이로 공유
netsh wlan show drivers netsh wlan show settings netsh wlan set hostednetwork mode=allow ssid=아이디 key=비밀번호 netsh wlan start hostednetwork netsh wlan show hostednetwork 1. --- 유선 LAN에서 공유 설정할 것 netsh wlan stop hostednetwork
Windows 7 IP Routing
regedit
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters\IPEnableRouter = 1
IP 주소
비공인 IP 주소 공간 (RFC 1918)
{| cellspacing="0" cellpadding="2" border="1" width="100%" bgcolor="#FFFFFF" align="center"
|-
| width="20%" align="center" valign="middle" style="background-color:#eee;" | 클래스
| width="40%" align="center" valign="middle" style="background-color:#eee;" | 공인 IP
| width="40%" align="center" valign="middle" style="background-color:#eee;" | 사설 IP
|-
| align="center" valign="middle" | A
| align="left" valign="middle" |
1 ~ 126.xxx.xxx.xxx
255.0.0.0
| align="left" valign="middle" |
10.0.0.0 ~ 10.255.255.255
255.0.0.0
|-
| align="center" valign="middle" | B
| align="left" valign="middle" |
128 ~ 191.aaa.xxx.xxx
255.255.0.0
| align="left" valign="middle" |
172.16.0.0 ~ 172.32.255.255
255.255.0.0
|-
| align="center" valign="middle" | C
| align="left" valign="middle" |
192 ~ 223.aaa.bbb.xxx
255.255.255.0
| align="left" valign="middle" |
192.168.0.0 ~ 192.168.255.255
255.255.255.0
|-
| align="center" valign="middle" | D
| align="left" valign="middle" |
224 ~ 239 (멀티캐스트용)
| align="left" valign="middle" |
|}
Classless Inter-Domain Routing (CIDR)
*10.0.0.0/16
*10.0.0.0/28
*172.16.0.0/16
Appliance
가상 환경에서는 4가지 형태의 Network 접속이 있다.
PC -> Virtual Machine, Virtual Machine -> PC
외부 Network -> Virtual Machine, Virtual Machine -> 외부 Network
VMWare Network 설정
{| cellspacing="1" cellpadding="1" border="1" width="100%"
|-
| width="20%" bgcolor="cyan" align="center" valign="middle" | Network 모드
| width="80%" bgcolor="cyan" align="center" valign="middle" | 상세 설명
|-
| align="center" | Birdge
|
가상 머신이 호스트를 브리지로 사용하여 직접 네트워크에 접속하는 형태
가상 머신은 호스트와 무관하게 자신만의 독립적인 네트워크를 구성함
가상 머신은 자신만의 IP를 받아 외부 네트워크와 연결 가능
|-
| align="center" | Host-only
|
외부와 단절된 네트워크로 호스트와 다른 게스트 머신만 접속이 가능 하다.
호스트에 등록된 "VirtualBox Host-Only Network"를 사용하여 통신 한다.
"VirtualBox Host-Only Network"에 [연결 브리지](Network.md#연결 브리지.md)를 설정하여 외부와 통신이 가능 하다.
|-
| align="center" | NAT
|
네크워크 주소 변환, Network Address Translation
하나의 IP를 다른 IP로 변환하는 방법
비공인 IP 주소를 공인 IP 주소로 변환하는 등에 사용 된다.
비공인 IP 주소 공간 (RFC 1918)
네트워크 크기 8 : 10.0.0.0 ~ 10.255.255.255.255
네트워크 크기 12 : 172.16.0.0 ~ 172.31.255.255
네트워크 크기 16 : 192.168.0.0 ~ 192.168.255.255
가상 머신에 사설 IP를 할당하고 인터넷 접속시에는 호스트의 IP를 사용하여 통신 한다.
기본으로 DHCP 서버를 제공하여 DHCP를 사용하지 않을 경우 수동으로 IP를 설정 한다.
가상 머신을 외부와 직접 연결하기 위해서는 [[Network#연결 브리지|연결 브리지]], [포트 포워딩(Port Forwarding)](Network.md#VirtuaBox 포트 포워딩.md)을 사용 한다.
|}
VirtualBox Network 설정
VirtualBox를 시작 한다.
가상 머신을 선택한 후 "설정" 버튼을 선택 한다.
새로 뜨는 창에서 네트워크 메뉴를 선택 한다.
어댑터 1에서 "다음에 연결됨"을 아래 사항을 참조하여 설정 한다.
{| cellspacing="1" cellpadding="1" border="1" width="100%"
|-
| width="20%" bgcolor="cyan" align="center" valign="middle" | 다음에 연결됨
| width="80%" bgcolor="cyan" align="center" valign="middle" | 상세 설명
|-
| align="center" | 연결되지 않음
|
Not attached
네트워크에 연결 되지 않는다.
|-
| align="center" | NAT
(Network Address Translation)
|
네크워크 주소 변환 (NAT, Network Address Translation)
하나의 IP를 다른 IP로 변환하는 방법
비공인 IP 주소를 공인 IP 주소로 변환하는 등에 사용 된다.
비공인 IP 주소 공간 (RFC 1918)
네트워크 크기 8 : 10.0.0.0 ~ 10.255.255.255.255
네트워크 크기 12 : 172.16.0.0 ~ 172.31.255.255
네트워크 크기 16 : 192.168.0.0 ~ 192.168.255.255
'''가상 머신에 사설 IP를 할당'''하고 인터넷 접속시에는 호스트의 IP를 사용하여 통신 한다.
기본으로 DHCP 서버를 제공하여 DHCP를 사용하지 않을 경우 수동으로 IP를 설정 한다.
Network 접속 방법 : 게스트 머신 -> 인터넷/호스트 머신 : Default로 접속을 지원 한다.
Network 접속 방법 : 게스트 머신 <- 인터넷/호스트 머신
[포트 포워딩(Port Forwarding)](Network.md#VirtuaBox 포트 포워딩.md)을 사용 한다.
가상 머신의 설정에서 네트워크를 NAT로 설정하면 하단에 Port Forwarding을 관리할 수 있는 버튼이 활성화 된다.
|-
| align="center" | NAT Network
|
"파일 > 환경 설정 > 네크워크 > NAT 네트워크" 메뉴에서 설정한 NAT network을 여러 VM이 공유 한다.
NAT 네크워크에서 설정된 것을 공유기라고 생각하면 편리 하다.
|-
| align="center" | 브리지 어댑터
(Bridged Adapter)
|
가상 머신이 호스트를 브리지로 사용하여 직접 네트워크에 접속하는 형태
가상 머신은 호스트와 무관하게 자신만의 독립적인 네트워크를 구성함
가상 머신은 자신만의 IP를 받아 외부 네트워크와 연결 가능
Network 접속 방법 : 게스트 머신 -> 인터넷
Network 접속 방법 : 게스트 머신 -> 호스트 머신
Network 접속 방법 : 게스트 머신 <- 인터넷
Network 접속 방법 : 게스트 머신 <- 호스트 머신
|-
| align="center" | 내부 네트워크
(Internal networking)
|
Internal Network
Internal Network만 사용하도록 설정 한다.
같은 Internal Network상에 있는 다른 VM과는 통신이 가능 하다.
Network 접속 방법 : 게스트 머신 -> 인터넷
Network 접속 방법 : 게스트 머신 -> 호스트 머신
Network 접속 방법 : 게스트 머신 <- 인터넷
Network 접속 방법 : 게스트 머신 <- 호스트 머신
|-
| align="center" | 호스트 전용 어댑터
(Host-only Adapter)
|
외부와 단절된 네트워크로 호스트와 다른 게스트 머신만 접속이 가능 하다.
호스트에 등록된 "VirtualBox Host-Only Network"를 사용하여 통신 한다.
"VirtualBox Host-Only Ethernet Adapter" 설정
"제어판->네트워크 및 인터넷 -> 네트워크 연결 -> VirtualBox Host-Only Network -> Internet Protocol Version 4 (TCP/IPv4)" 메뉴를 선택 합니다
IP 주소 : 192.168.56.1
서브넷 마스크 : 255.255.255.0
"파일 -> 환경 설정 -> 네트워크 -> VirtualBox Host-Only Ethernet Adapter" 메뉴를 선택 합니다.
어댑터
IPv4 주소 : 192.168.56.1
IPv4 서브넷 마스크 : 255.255.255.0
DHCP 서버
서버 사용함 선택
서버 주소 : 192.168.56.100
서버 마스크 : 255.255.255.0
최저 주소 한계 : 192.168.56.101
최대 주소 한계 : 192.168.56.254
Network 접속 방법 : 게스트 머신 -> 인터넷
"VirtualBox Host-Only Network"에 [연결 브리지](Network.md#연결 브리지.md)를 설정 한다.
Network 접속 방법 : 게스트 머신 -> 호스트 머신 : Default로 접속을 지원 한다.
Network 접속 방법 : 게스트 머신 <- 인터넷
Network 접속 방법 : 게스트 머신 <- 호스트 머신 : Default로 접속을 지원 한다.
|-
| align="center" | 일반 드라이버
|
|}
호스트에서만 테스트용으로 연동하여 사용할 경우 네트워크 설정
"파일 -> 환경설정 -> 네트워크" 메뉴에서 VirtualBox Host-Only Ethernet Adapter를 추가 한다.
IPv4 주소 : 192.168.~.1
IPv4 서브넷 마스크 : 255.255.255.0
가상 시스템의 "설정 -> 네트워크" 메뉴에서 어댑터를 2개 추가 한다.
어댑터 1 : NAT (고정 IP를 설정하지 마세요)
어댑터 2
:*다음에 연결됨 : 호스트 전용 어댑터
:*이름 : 위에서 추가한 VirtualBox Host-Only Ethernet Adapter를 선택
VirtuaBox 포트 포워딩
Port Forwarding, 일종의 서버에서의 IP 공유
가상 머신의 포트를 Host Machine의 포트와 연결 시켜서 Host Machine의 포트로 가상 머신을 접근할 수 있도록 하는 방법
아래는 VirtualBox에서 호스트의 2222 Port를 가상 머신의 22 Port로 연결하는 방법 이다.
주의: Linux와 Unix 계열의 경우, root 사용자로 실행되는 프로그램만이 호스트 포트가 1024보다 작을 수 있다.
가상 머신 이름 예 : alfresco, 처음 가상 머신을 만들 때 사용한 이름
네트워크 카드 이름 예 : pcnet, e1000
pcnet : Pcnet-FAST III 등 사용 시
e1000 : Intel PRO/1000 등 사용 시
포트 포워딩 이름 예 : guestssh, 임의로 정한다.
Protocol : TCP, UDP
#--- Vista에서 명령 실행시 저장 오류가 발생할 경우 관리자 권한으로 cmd 파일을 실행하여 아래 작업을 한다.
cd C:/Program Files/Sun/VirtualBox
VBoxManage setextradata "가상_머신_이름"
"VBoxInternal/Devices/네트워크_카드_이름/0/LUN#0/Config/포트_포워딩_이름/Protocol" TCP
VBoxManage setextradata "가상_머신_이름"
"VBoxInternal/Devices/네트워크_카드_이름/0/LUN#0/Config/포트_포워딩_이름/GuestPort" 22
VBoxManage setextradata "가상_머신_이름"
"VBoxInternal/Devices/네트워크_카드_이름/0/LUN#0/Config/포트_포워딩_이름/HostPort" 2222
#--- 설정 후 Virtual Machine을 다시 시작 하여야 한다.
#--- 아래는 포트 포워딩 사례
VBoxManage setextradata "CentOS530" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/telnets/Protocol" TCP
VBoxManage setextradata "CentOS530" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/telnets/GuestPort" 22
VBoxManage setextradata "CentOS530" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/telnets/HostPort" 22
VBoxManage getextradata "CentOS530" enumerate
포트 포워딩 이름을 http와 같이 많이 사용하는 이름(예약어)으로 하였을 경우 동작하지 않는 경우가 있다. 이때에는 pphttp 등으로 이름을 변경하여 사용 하여야 한다.
등록된 포트 포워딩 정보를 삭제하는 방법
VBoxManage setextradata "가상_머신_이름"
"VBoxInternal/Devices/네트워크_카드_이름/0/LUN#0/Config/포트_포워딩_이름/Protocol"
VBoxManage setextradata "가상_머신_이름"
"VBoxInternal/Devices/네트워크_카드_이름/0/LUN#0/Config/포트_포워딩_이름/GuestPort"
VBoxManage setextradata "가상_머신_이름"
"VBoxInternal/Devices/네트워크_카드_이름/0/LUN#0/Config/포트_포워딩_이름/HostPort"
VirtualBox에 등록된 정보 보기
VBoxManage getextradata "가상_머신_이름" enumerate
#--- 위 명령으로 조회한 사례
Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/telnets/Protocol, Value: TCP
Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/telnets/HostPort, Value: 22
Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/telnets/GuestPort, Value: 22
참고 문헌
Oracle VirtuaBox 포트 포워딩
Oracle이 Sun을 인수한 후, Oracle VirtualBox에서 포트 포워딩 설정이 간단해 졌다.
가상 머신의 설정에서 네트워크를 NAT로 설정하면 하단에 Port Forwarding을 관리할 수 있는 버튼이 활성화 된다.
Network 용어
VLAN (Virtual LAN) : http://www.joinc.co.kr/modules/moniwiki/wiki.php/man/12/VLAN
VxLAN (Virtual Extensible LAN) : http://www.joinc.co.kr/modules/moniwiki/wiki.php/man/12/vxlan
STP (Spanning Tree Protocol) : http://www.joinc.co.kr/modules/moniwiki/wiki.php/man/12/stp
VPN : http://gotocloud.co.kr/?p=1280
Network 관련 Table
ARP Table
저장 위치 : NIC
관리 항목 : IP, MAC
LAN에 ARP request를 boardcast한 후 ARP reply를 받아서 IP에 해당하는 MAC address를 ARP Table에 등록
NIC에서 Promiscuous mode를 설정하면 모든 Ethernet Frame을 수신하여 IP layer로 전달
arp -a
참고 문헌
http://cafe.naver.com/neteg/3121<span style="color:#006400;"
MAC table
저장 위치 : Switch
관리 항목 : MAC
show mac-address-table
Routing Table
<span style="color:#006400;"node 명령어
ip route
Switch 명령어
show ip route
Network 암호
참고 문헌
*Cisco Packet Tracer 6.2 : http://cris.joongbu.ac.kr/course/2015-2/cn2/Cisco%20Packet%20Tracer%206.2%20for%20Windows%20Student%20Version%20(no%20tutorials).exe
[IP Address](IP Address.md)
[[VMware Server|VMware Server]], [VMware Player](VMware Player.md)
-
7장.|DNS|ftp://ftp2.kr.freebsd.org/FreeBSD-kr/doc/misc/PoweredByDNS/PoweredByDNS7.html%7C7장.%7CDNS 오류 수정 도구 : nslookup의 사용법을 자세하게 정리 하였다.
http://www.slideshare.net/shahryaralipk/network-virtualization-for-cloud-services-infrastructurepresentation-28959186
[[Category:Network|Category:Network]]
[[Category:Virtual Appliance|Category:Virtual Appliance]]
분류: IDC