EverKB

Knowledge Base Ever

שרת CentOS עם התקן NIC כפול המותקן ברשת LAN ומחובר לפלח האינטרא-נט הכפול יכול לממש גישה סימולטנית של IP ציבורי כפול באמצעות העברת יציאת נתבים.

2019-11-11 17:09:37

תווית: CentOS, dual network interfaces, ip command, NIC כפול, ניתוב NIC כפול, IP ציבורי כפול

תרחיש: שרת נמצא ב- LAN ומספק שירותים באמצעות מיפוי הנמל של הנתב. השרת מצויד בכרטיסי רשת כפולים, השייכים לקטעי אינטרא-נט שונים. לכל פלח רשת יש כתובת IP ציבורית הממופה לשרת.

סימפטום: כתובת ה- IP הציבורית שתואמת ל- NIC ברירת המחדל בשני ה- NIC של השרת יכולה לגשת לשרת באופן רגיל ולא ניתן לגשת אל ה- IP האחר.

הפתרון: עליך להגדיר את שתי כתובות ה- IP הציבוריות כדי לגשת לשרת. נניח ששני מקטעי הרשת הם: 192.168.0 ו- 192.168.1, וכתובות ה- IP של השרת בשני מקטעי הרשת הם: 192.168.0.9 ו- 192.168.1.9, ושמות כרטיסי הרשת הם: enp2s0 ו- enp3s0. תצורת הניתוב היא כדלקמן:
echo "101 Net1" >> /etc/iproute2/rt_tables
echo "102 Net2" >> /etc/iproute2/rt_tables

ip route add default via 192.168.0.1 dev enp2s0 table Net1
ip route add default via 192.168.1.1 dev enp3s0 table Net2

ip rule add from 192.168.0.9 table Net1
ip rule add from 192.168.1.9 table Net2

תווית

CentOS7 CentOS PHP Linux Python3 Python MySQL MariaDB YUM JavaScript CSS Redis MySQL8 caching_sha2_password HTML mysql_native_password PHP7 sub folder availability eth0 MariaDB10.4 PostgreSQL SOCKS5 Web Server date Install MongoDB pdo_sqlsrv Symfony File Upload mssql-tools register_shutdown_function sqlsrv Zend Framework ADDDATE DevExpress JetBrain php-fpm unixODBC-devel height network interface Shadowsocks-Libev string Aura error_get_last Port 80 Web Development data INDENTIFIED BY password policy requirements SOCKS SVN Fedora Media Writer msodbcsql Redis5 SQLAlchemy absolute Deepin jemalloc toggle convert FuelPHP mysqlclient Shadowsocks ss5.passwd at-symbol Error Control Operator margin PHPUnit Framework vps daemon process IIS password SOCKET sudoers center Fatal Errors MongoDB4 SQL Server 2017 WiFi .htaccess DATE_SUB Phalcon TestCase Compiling PHP frequency conflict set_error_handler ss5.conf apr Elasticsearch7.3 PHPUnit Vincent Garreau daemon HTTP particles.js Slim Sudo Failed to build these modules: _uuid MongoDB SQL Server width DATE_ADD ip command pg_bha.conf Tcp BBR Compiling Apache Frameworks MySQL-python scrollbar ss5-3.8.9 Apache2.4 Elasticsearch libpython3.7m.so.1.0 PHPStorm VIM CURLOPT_POSTFIELDS NodeJs show substr Bluetooth Failed to build these modules: _ctypes Minimal ISO SQL Date Funcitons Wi-Fi date sub INTERVAL PECL Tag Cloud CodeIgniter font-size root ss5 apache httpd dual network interfaces Laravel vertical-align CURLFille horiz-align node.js ShadowsocksR SUBDATE BarManager exec mb_substr PyCharm SOCKS5 Proxy Server WebStorm date add IntelliJIDEA PEAR Tag Chrome find remi src Apache du jQuery PHP5.5 V2Ray cURL hide nginx Shadowsocks-Python

המאמר האחרון