목표: 가상 머신에서 PC 및 인터넷으로의 트래픽 라우팅을 구성합니다. CentOS7에서 wlan0에서 eth0으로 또는 그 반대로 트래픽 전달을 구성합니다.
내 토폴로지:
VM - (유선) --- eth0=RPI=wlan0 -(무선)- 라우터 -- ISP | (무선 전화) 개인용 컴퓨터
- 이 기사를 사용하여 eth0에서 wlan0으로의 트래픽 전달을 구성했습니다.https://gist.github.com/tzermias/5408466
- wlan0은 nmtui를 사용하여 구성되었습니다.
발행되는 명령:
sudo ifconfig eth0 192.168.56.1 netmask 255.255.255.0
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -A FORWARD --in-interface eth0 -j ACCEPT
sudo iptables --table nat -A POSTROUTING --out-interface wlan0 -j MASQUERADE
이제 네트워크 스크립트 폴더를 확인했습니다.
[pi@rtr001 network-scripts]$ ls
ifcfg-FunBox-84A8 ifdown-ppp ifup-ippp ifup-TeamPort
ifcfg-link ifdown-routes ifup-ipv6 ifup-tunnel
ifcfg-lo ifdown-sit ifup-isdn ifup-wireless
ifdown ifdown-Team ifup-plip init.ipv6-global
ifdown-bnep ifdown-TeamPort ifup-plusb keys-FunBox-84A8
ifdown-eth ifdown-tunnel ifup-post network-functions
ifdown-ippp ifup ifup-ppp network-functions-ipv6
ifdown-ipv6 ifup-aliases ifup-routes
ifdown-isdn ifup-bnep ifup-sit
ifdown-post ifup-eth ifup-Team
ifcfg-eth0
거기에는 없지만 아래 출력에서는 ifconfig
주소가 할당되었으며 IP 10.10.10.2를 사용하여 이더넷 포트에 연결된 장치에 ping을 보낼 수 있음을 보여줍니다 .
[pi@rtr001 network-scripts]$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.10.10.1 netmask 255.255.255.0 broadcast 10.10.10.255
ether b8:27:eb:d7:d7:9a txqueuelen 1000 (Ethernet)
RX packets 3 bytes 214 (214.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 50 bytes 8296 (8.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 32 bytes 2592 (2.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 32 bytes 2592 (2.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.26 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::47ae:281a:680f:11eb prefixlen 64 scopeid 0x20<link>
ether b8:27:eb:82:82:cf txqueuelen 1000 (Ethernet)
RX packets 649 bytes 42528 (41.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 492 bytes 69881 (68.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
또한 IP 10.10.10.2가 있는 VM은 10.10.10.1을 ping할 수 있지만 192.168.1.22(RPI - 라우터 사이의 서브넷 192.168.XX에 있는 모든 IP)는 ping할 수 없습니다.
질문:
sudo ifconfig eth0 10.10.10.1 netmask 255.255.255.0
Linux에서 파일을 수정하는 목적은 무엇입니까? 즉, 출력에 따르면ifconfig
주소가eth0
할당된 것처럼 보이지만 구체적인 내용은 없습니다ifcfg-eth0
.- 재부팅 후 eth0 구성을 표시하는 방법은 무엇입니까?
- VM의 192.168.XX 서브넷에서 ping을 수행하려면 RPI에서 무엇을 수정해야 합니까?
- NAT IP 테이블을 보는 방법과 어떤 명령을 실행해야 합니까?
iptables -L
NAT 규칙이 표시되지 않는 것 같습니다 ...
답변1
이 명령은 sudo ifconfig...
파일을 변경하지 않습니다. 다음에 재부팅하거나 다음 ifconfig
IP, 넷마스크 등의 값이 변경될 때까지 변경됩니다.
지속적으로 변경하려면 파일을 만들고 ifcfg-eth0
파일에 정보를 입력하세요(비슷함).
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
NETWORK=192.168.56.0
NETMASK=255.255.255.0
IPADDR=192.168.56.1
USERCTL=no