diff --git a/roles/kubernetes/preinstall/tasks/main.yml b/roles/kubernetes/preinstall/tasks/main.yml
index 4737801d936f9056a5b2a67531797c8a8203239c..41a90e29ff0d022cb049202d88d6eeb7124b2a85 100644
--- a/roles/kubernetes/preinstall/tasks/main.yml
+++ b/roles/kubernetes/preinstall/tasks/main.yml
@@ -139,8 +139,25 @@
   when: disable_ipv6_dns and not ansible_os_family in ["CoreOS", "Container Linux by CoreOS"]
   tags: bootstrap-os
 
+- name: set default sysctl file path
+  set_fact:
+    sysctl_file_path: "/etc/sysctl.d/99-sysctl.conf"
+  tags: bootstrap-os
+
+- name: Stat sysctl file configuration
+  stat: path={{sysctl_file_path}}
+  register: sysctl_file_stat
+  tags: bootstrap-os
+
+- name: Change sysctl file path to link source if linked
+  set_fact:
+    sysctl_file_path: "{{sysctl_file_stat.stat.lnk_source}}"
+  when: sysctl_file_stat.stat.islnk is defined and sysctl_file_stat.stat.islnk
+  tags: bootstrap-os
+
 - name: Enable ip forwarding
   sysctl:
+    sysctl_file: "{{sysctl_file_path}}"
     name: net.ipv4.ip_forward
     value: 1
     state: present