udział internetowy w drugim porcie ethernetowym serwera Ubuntu 16.04

0

Mam serwer PC, który działa na serwerze Ubuntu 16.04, ten serwer ma dwa porty Ethernet - eno1i eno2. Korzystam z mojego eno1portu, aby uzyskać dostęp do Internetu za pomocą następującego kodu w interfacespliku znajdującym się w/etc/network/

auto eno1
iface eno1 inet static
address 103.56.4.162
netmask 255.255.255.248
gateway 103.56.4.161
dns-nameservers 103.56.4.6 8.8.8.8

Mogę uzyskać dostęp do Internetu, nie ma problemu.

chcę udostępnić ten internet eno2i chcę podłączyć router z tego eno2portu Ethernet.

Jak mogę to osiągnąć?

międzygwiezdny pył
źródło

Odpowiedzi:

0

Nauczyłem się, jak to zrobić. po wielu próbach znalazłem rozwiązanie. Mam to rozwiązanie z tego linku https://help.ubuntu.com/community/Router

Po pierwsze, nie zapomnij wykonać kopii zapasowej pliku interfejsów przed jego edycją

sudo cp /etc/network/interfaces /etc/network/interfaces.bak

ponieważ eno2mam dołączone poniżej linie do powyższego pliku interfejsów

auto eno2
iface eno2 inet static
address 192.168.0.1
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255

Następnie utworzyłem plik skryptu o nazwie nat.shi umieściłem poniżej kod:

echo -e "\n\nLoading simple rc.firewall-iptables version $FWVER..\n"
DEPMOD=/sbin/depmod
MODPROBE=/sbin/modprobe

EXTIF="eno1"
INTIF="eno2"

echo "   External Interface:  $EXTIF"
echo "   Internal Interface:  $INTIF"

#======================================================================
#== No editing beyond this line is required for initial MASQ testing == 
echo -en "   loading modules: "
echo "  - Verifying that all kernel modules are ok"
$DEPMOD -a
echo "----------------------------------------------------------------------"
echo -en "ip_tables, "
$MODPROBE ip_tables
echo -en "nf_conntrack, " 
$MODPROBE nf_conntrack
echo -en "nf_conntrack_ftp, " 
$MODPROBE nf_conntrack_ftp
echo -en "nf_conntrack_irc, " 
$MODPROBE nf_conntrack_irc
echo -en "iptable_nat, "
$MODPROBE iptable_nat
echo -en "nf_nat_ftp, "
$MODPROBE nf_nat_ftp
echo "----------------------------------------------------------------------"
echo -e "   Done loading modules.\n"
echo "   Enabling forwarding.."
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "   Enabling DynamicAddr.."
echo "1" > /proc/sys/net/ipv4/ip_dynaddr 
echo "   Clearing any existing rules and setting default policy.."

iptables-restore <<-EOF
*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT
EOF

echo -e "\nrc.firewall-iptables v$FWVER done.\n"

niż robię to, wykonując

chmod a+x nat.sh

niż uruchom go jako root

sudo sh nat.sh

spraw, aby nasz nowy skrypt był bootowalny, abyśmy nie musieli uruchamiać skryptu przy każdym ponownym uruchomieniu.

sudo cp nat.sh /etc/init.d/
sudo ln -s /etc/init.d/nat.sh /etc/rc2.d/S95masquradescript

Następnie podłączyłem kabel Ethernet, który jest podłączony do routera eno2i skonfigurowałem router do statycznego adresu IP zgodnie z poniższym opisem dla DHCP:

IP Address: 192.168.0.2
Netmask: 255.255.255.0 (/24)
Gateway: 192.168.0.1
DNS Server: 103.56.4.6
            8.8.8.8

i zadziałało dla mnie.

międzygwiezdny pył
źródło